When performing the board bringup for the expansion board, I quickly discovered that I made a mistake on the RFM69HW footprint. Typically when you are numbering a component you continue the numbering on the same side you stopped on (1…8, 9..16). In this case, the schematic footprint I created counted from 1..8, then I started 9 across from pin 1 instead of being across from pin 8. Doh!
Here’s a quick picture of the Rev AA board design tested out, with I2C, OneWire, and UART cable connections leaving it. The board itself has the GPS mounted, Ethernet SPI connection, and 128Mb flash chip, mounted and working. Next to the board is a 2 AA cell battery boost chip hot-glued to a AA case.
I also discovered that 5 pins that I believed were there, were not present on the L152RE version of the nucleo board. Based on these two details, I decided I would quickly get another board out that would have those details fixed, and any other changes/improvements that I wanted to make.
STM32 Nucleo – Revision AB
As my Github Readme indicates, the quick update turned into a slight overhaul of the design, where many of the fundamentals remained. My changes to the design have made the board more inline with my end goal of having a multi-purpose board that can interface with a wide variety of sensors and sending that data wirelessly to listening nodes.
The schematics show that MotionSense1 and 2 now have the capability to control servo’s, the on board relay can switch up to 30V at 1A, and a built in piezo can be used to get the users attention if needed. I added the ATSHA204A for some potential crypto functionality to handle things such as signed firmware updates delivered wirelessly. It also has a random number generator which can be useful on devices with low entropy.
I added a 3.3V regulator for handling the power to all of the connected bus’s so that the power to external devices can be controlled from the processor (which will help us reach an ultra low power state).
I opted to send out the first revision of the board knowing that it wouldn’t be perfect, and it turns out I was right. By sending it out and making progress on other projects, I saved a significant amount of time for a $20 set of boards. Having the boards in hand, I quickly checked out the design and found areas that could be fixed and improved. So with this revision of the board I’m much more confident that things are connected the way they need to be, and that I have nice features that I would have wished to have on the AA board, but didn’t (such as an on board relay). Having spent another $20 for a new set of boards is great since I can now focus on writing firmware and software to interface with and take advantage of this board to its fullest!