-
1Build the Hardware
![]()
Schematic
Cut the perfboard for the Base Board
Cut the perfboard to 3" x 2" (76.5 x 51.5 mm) dimension or 30 x 20 pads. Cut out corners (3 x 3 1/10"),
Cut the perfboard for the Key Board, Solder and Wire Push Buttons
Solder the 8 push buttons to the perfboard. Each button is in the middle of 4 x 3 pads, the grid is 0.4". Wire the buttons.
Mount the Firefly SBC
Solder the Firefly to the perfboard.
Mount USB Charger
Solder the Adafruit Micro-Lipo Charger to the perfboard. I shortened the board on the USB end and on the battery connector end. If the battery has a JST connector, no wiring/solderin is required.
Mount the DCDC Converter
The DCDC coinverter stays on the long edge on base board. You can use wires to connect and fix the PCB to the base board.
Mount the Current Sensor
Remove the screw terminal.
Mount the Motor Driver
Remove the screw terminals. Capacitor
Wire the buttons to the SBC
Wire the button to the SBC.
Place the Resistors
Mount the OLED Display
Glue the OLED Display to the underside .
-
3Flash the PPP Firmware
Flash the Mecrisp-Cube binary
MecrispCubeFirefly.binor better the fs-binaryMecrispCubeFireflyFS.binto the Firefly BLE STM32WB55 Development Board. The Firefly does not have a SWD/JTAG connector but the SWD pins are available on the Arduino connector (see JTAG/SWD Pinout). If you do not have a STLINK you can use the built-in USB DFU bootloader, for details see Flash Mecrisp-Cube to the Target.- Connect the Firefly Board to the STLINK and the STLINK to the USB PC
- Copy binary (MecrispCubeFirefly.bin or better the MecrispCubeFireflyFS.bin) to the USB mass storage NODE_WB55RG
Update BLE Stack (optional)
You can find the BLE Stack and FUS in STM32CubeWB or from GitHub, in the directory
Projects/STM32WB_Copro_Wireless_Binaries. At time of writing the FUS is Version 1.2.0, the stack v1.19.1. The STM32CubeProgrammer is v2.16.0.- For programming the switch SW2 has to be in position BOOT0.
- Connect the dongle USB with the computer.
- Flash the firmware with STM32CubeProgrammer, either with the CLI (see below) or the GUI (use the firmware upgrade service, start address usually 0x080CE000)
- Disconnect dongle from the computer.
- Set the switch SW2 to position 0.
$ alias cubepgmcli='/opt/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin/STM32_Programmer_CLI' $ cd STM32Cube_FW_WB_V1.19.1/Projects/STM32WB_Copro_Wireless_Binaries/STM32WB5x $ cubepgmcli -c port=USB1 -fwupgrade stm32wb5x_BLE_Stack_full_fw.bin 0x080CE000 firstinstall=0
Peter
Discussions
Become a Hackaday.io Member
Create an account to leave a comment. Already have an account? Log In.