electric_vehicle_lover Posted August 6, 2016 Posted August 6, 2016 I strong believe that Firmware can be update to the boards over Bluetooth. The boot0 pin of STM32 is then configured and the firmware is flash. The firmware must receive a command from the app to reset the STM32 and so it will enter in bootloader mode. Does anyone knows what can be this command?? Firmware programming over Bluetooth The STM32 boot0 pin is connected to 3.3V with a pullup resistor, this means that the code that boots at reset time is the firmware. The same boot0 pin connected to the the UART Bluetooth module header, with label "BO" and this means that the module can enable the flash programming by connecting this pin to GND. If the firmware have a command to reset the STM32, it will reset to STM32 bootloader and the firmware can be then programmed by bluetooth. https://github.com/EGG-electric-unicycle/documentation/wiki/MicroWorks-30B4---30km-h-controller-board-with-bluetooth NOTE: Original firmware have Serial Wire Debug (SWD) disabled and so to enable it, just connect the boot0 pin to GND and use SWD to erase the STM and it will then be ready to be flashed and debugged.
esaj Posted August 6, 2016 Posted August 6, 2016 Pretty much the first Google hit for stm32 reset: http://electronics.stackexchange.com/questions/31603/stm32-performing-a-software-reset
electric_vehicle_lover Posted August 6, 2016 Author Posted August 6, 2016 Thanks @esaj but maybe I didn't explained correctly. The original firmware must receive a command to reset. I mean a command just like the one to beep, start horizontal calibration, etc. I remember that we discussed the possibility that there was a specific bootloader from the vendor but now I see that the bootloader is the original from STM32. Or we don't know if there is a level 1 and level 2 bootloader's. Anyway, in future I hope to have my own firmware and I would like to have an app for the user to flash the firmware. That way, I would need to know the command for original firmware and I would adopt the same command for my firmware.
Recommended Posts
Archived
This topic is now archived and is closed to further replies.