POST
MaSCOT Report, Part 4: The Companion Board II
I designed the board in Eagle, design files are on GitHub.
{:.center} (click image for PDF version)
The board is very straightforward. Lots of 0.1" header for connecting to the Jetson dev board and then breaking those pins out to pads. A TI MSP430FR2311 in a 20-pin TSSOP is the brains of the operation. I purchaed a MSP-FET just to have one around, and used the standard “full” 14-pin pinout using Spy-Bi-Wire for communications. The MSP-FET can power the companion board for testing (selected by JP9). The power and reset lines are grounded by 2N7002 FETs.
The MSP code took longer than I expected and ended up not being as featureful as I would have liked. I originally intended to develop/test the firmware within Ceedling, but ended up getting stuck on the learning curve and reverting to a flat Rakefile-emulating-a-Makefile approach. I wanted to properly structure the code to isolate the testable code from the BSP, for this simple project it seemed to introduce too many levels of indirection. But I would certainly consider the approach for the future.
I also wrote a library and command-line client for accessing companion board from the host (Jetson). Pretty simple stuff, which starts from the Adafruit BMP280 Arduino library. This command line client can log temperature and pressure (again, on the Jetson) and provides control over the two light PWMs.
I won’t pretend it’s very polished, but it works.