This is an adaptation of the maple bootloader in order to make it work with the Robotis CM900 and OpenCM9.04 boards:
The easy way is to use a simple sketch with the robotis OpenCM Framework to do it. Simply run
OpenCM IDE and open the opencm904_maple_loader
sketch that is in the sketch/
directory of
this repository.
If you load that sketch, it will rewrite your bootloader to the OpenCM9.04 bootloader; OpenCM IDE won't work anymore!
Wait until your board led blinks, and your bootloader should be changed. You can press the reset button and you should see the "bootloader blink".
You can either build it or get it (from the snapshot
directory). See below.
This step may require some soldering or electronic hacking, you'll have to wire up a serial 3.3V adapter. You can for instance use a 3.3V FTDI cable or a 3.3V FTDI Breakout. 5V logic should also work with this.
Then, wire your serial adapter to the Serial1 (TX1 and RX1) pins of your board.
Press the RESET button of your board, and then put the BOOT0 signal to 3.3V (this can be done with an extra wire), release the RESET button, and release the BOOT0.
You can now flash the bootloader:
# You may have to adapt the serial port, this is an example:
python stm32loader.py -p /dev/ttyUSB -evw bootloader.bin
Tada! It should then be OK.
Next, you can program your board using dfu-util
. This is done by default in the libmaple
Makefile.
You can now use cm900
and opencm904
variants in the LibMaple, or use the RobotsWar
framework
https://github.com/RobotsWar/RobotsWar
The master
branch of this repository is supporting CM900 board, you can find a
snapshot of the bootloader in snapshot/maple-boot-cm900.bin
.
Ths opencm904
branch of this repository is supporting the OpenCM9.04 board. You can
find a snapshot of this bootloader in snapshot/maple-boot-opencm904.bin
.