Programming Q26 and STM32


I have implemented a AVL system using a STM32 and the Q26 but was wondering what would be the best way to upload firmware for both chipsets using DOTA? The only solution I can think of is to design a bootloader in the STM32 and program using the Q26 via RS232. The programming data could be sent using the TCP/UDP. For the Q26 I could use DOTA over WIP describes in the forum.

Any suggestion will be useful.


We’ve successfully done this with Q2686 and an STM32F103 in our product. The STM32F103’s have a built in boot loader. We put code in the Q2686 to download stm32 using http, and use the STM32’s on board boot loader to load and verfiy the program. Details of STM32’s bootloader protocol are on the ST website. We wrote our own code according to this.


As roderick.taylor says, the STM32 has a built-in bootloader - this uses USART1.

But there is nothing to stop you writing a bootloader that uses any other interface you like - ST provide an App Note that illustrates this!

I managed to design a bootloader using http. I have to invoke the process using SMS as currently the TCP connection to the server is only available during an AVL data transmission (based on the server requirements). If the connection was permanent, I would have use a TCP packet to invoke the bootloader software. Right now I’m trying to partition my firmware into three blocks for the STM32 (bootloader, old code and new code). Right now I don’t see the Wavecom software being updated in the field as it is dumb terminal while all the smarts are in the STM32.