TI CC2538/CC26xx Serial Bootloader Utility on Linux

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.


  • 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.

Please let me know if you find any issues. Happy coding!


comments powered by Disqus