The bat board is a pretty minimal Teensy-sized breakout board, offered here assembled with STM32L052 (32MHz max, 64 kB flash, 8kB RAM) or STM32F072 (48MHz max, 128kB flash, 16kB RAM).
Because of the power options, this board is quite suitable for very low power applications, e.g. a battery powered sensor (especially with L052), or USB applications (especially with F072 because of the built-in DFU bootloader).
Well, the firmware is up to you (although I have a few examples using libopencm3 on github here; and there are a few precompiled test firmwares available on the documentation page). That page also has some more detail about uploading a firmware to the board.
A brief summary: when holding the "PA1" button during a reset or powerup, the MCU enters the built-in bootloader. The F072 has a DFU bootloader built-in, so no external hardware is needed to flash this one, only some software, e.g. dfu-util. The L052 only has a USART bootloader built-in, so an USB-to-Serial board is needed to use this. However I modified the BMP bootloader to act as a DFU bootloader on the L052 as well, and these L052 boards ship with this programmed in. So also the L052 boards don't need external hardware to program them (note that this one is entered by connecting PB3 and GND during reset/power-up, and the firmware needs to start at 0x8002000 instead of the usual 0x8000000, i.e. the bootloader takes up 8kB of the flash).
The SWD debug pins (SWDIO, SWCLK), along with power, are broken out along the short side opposite the USB, so they are easily accessible. So, if you have a SWD debugger ready (e.g. STlink V2, or jLink, or BMP, or a clone of these), you can flash the board this way.
The PCB itself can take any pinout-compatible STM32 MCU (in LQFP-48 package). I've tested it also with the ubiquitous STM32F103C8T6. The optional high-speed external crystal and pull-up resistor on D+ are primarily there to support chips like this, which require a crystal for USB.
If you'd like to build the board yourself, you can get the PCBs from OSH Park or pcbs.io. These are rev3, which is needed for non-Cortex M0 MCUs. i.e. no difference for the MCUs offered here. The only difference between rev2 and rev3 is that BOOT1 pin is tied to GND in rev3, which enables the built-in bootloader to be entered with the "PA1" button also on M3/M4. It's probably cheaper this way than from me because UK shipping is rather expensive.
If you'd like one of these with a different MCU than F072/L052 offered here; or have some modification done before I send the board, get in touch!
I have one extra rev1 populated PCB with F072, offered at a discount. Rev1 has a different pinout (can be seen here) and does not have the footprint for the pull-up on D+ (this is not needed for USB on F072 anyway), and does not have the solder jumper to disconnect PA1 from the BOOT0 pin/button. The PCB is 1.6mm thick, purple (from OSH Park).
Note These boards are build by me pretty much by hand, so there may by tiny soldering imperfections. However, the boards are fully functional!
|Shipping Rate||First item||Additional items|
Royal Mail: International Standard Large Letter (Non-tracked)
We recognize our top users by making them a Tindarian. Tindarians have access to secret & unreleased features.
We look for the most active & best members of the Tindie community, and invite them to join. There isn't a selection process or form to fill out. The only way to become a Tindarian is by being a nice & active member of the Tindie community!