If you have ever been curious about using the TI CC2650 and other similar SimpleLink devices’ serial bootloader, wonder no longer.
I recently implemented the TI CC2538/CC26xx Serial Bootloader protocol in a Go library, called ccboot. This simply uses standard IO operations that can be used with a generic serial library.
Since a library is no fun without a command line interface, I have also implemented ccbootutil, which exposes most of the low level bootloader primitives(which can be shell scripted) and has a complete program sequence that reads ELF binaries, flashes, and resets the chip. You simply run the following command and ccbootutil did the rest:
cbootutil /dev/ttyUSB0 prgm YourCompiledProgramInStandardELFFormat.out
When implementing ccbootutil, I used a Go serial port interface library that indicated that it should work cross platform, so Windows and OSX users should not feel left out of the command line and scriptable goodness.
I have compiled the utility for each of the platforms in the repository builds/ directory.
Notes
- I have found that the serial bootloader can flash the CC2650 faster than an XDS110 over cJTAG.
- TI Smart RF Flash Programmer 2 certainly works, but is strictly for Windows and is not scriptable.
Links
Please let me know if you find any issues. Happy coding!