firmware update over the air

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

firmware update over the air

1,660 Views
Yul_m
Contributor I

Hi all,

I'd like to update my microcontroler firmware via GPRS. I've an external I2C memory. My GSM modem has already an IP stack. I just need to transfer some bytes on the GSM UART and it arrives on the server side. No matter about TCP/IP.

The problem for me is GPRS technology and the protocol to implement between the microcontroler and the server.

Is it better to transfer 100 bytes packets or 1500 ?  consider that sometimes the GPRS quality could be poor.

MTU (max transmit unit) =1500 bytes on this modem.

When the server transfer the 1500bytes to my microcontroler, would you add an ACK ? then send a new 1500Bytes frames ?

Would you add CTS/RTS hardware flow control ?

Would you add some CRC, checksum to check the integrity ?

Zmodem ?  encryption needed ? compression is a plus ?

I'd like to have a standard protocol and not doing my protocol.

 

Anyone implemented a binary difference patch on 8bit microcontroler ? the lower data, the less GPRS cost.

Regards,

yul

Labels (1)
0 Kudos
3 Replies

457 Views
ShivaSparr
Contributor I

Hi Yul...

 

 I am a beginner to "over the air  firmware upgrade" , could you plz share me the details(about how you did that...).

 

Thanks in advance

0 Kudos

457 Views
Richard777
Contributor I

Hy Yul

 

Is it better to transfer 100 bytes packets or 1500 ?  consider that sometimes the GPRS quality could be poor.

 

In GPRS communications more bytes transfered one time  is more fast proccess.

 

 

When the server transfer the 1500bytes to my microcontroler, would you add an ACK ? then send a new 1500Bytes frames ?

 

Yes this is the form 

 

Would you add CTS/RTS hardware flow control ?

 

 Is almost a must

 

Would you add some CRC, checksum to check the integrity ?

 

Not neccesary, the TCP protocol have data integrity

 

 

Zmodem ?  encryption needed ? compression is a plus ?

 

Maybe

 

 

I'd like to have a standard protocol and not doing my protocol.

 

Maybe

 

Best regards

 

 

0 Kudos

457 Views
Lundin
Senior Contributor IV
What about noise on the UART line itself? The built-in error detection in UART is worthless. One bit error because of noise on the UART line and your whole program gets corrupted. Add a CRC I would say. You might want a CRC check on the flash memory anyway.
0 Kudos