Skip to main content
Associate II
May 13, 2025
Question

Teseo-LIV4 GNSS Firmware Update CRC Error

  • May 13, 2025
  • 3 replies
  • 1374 views

I'm attempting to update the firmware for the LIV4 GNSS module, and everything seems to goes well until the CRC step, where it hangs for a few seconds then reports a failure. The module is no longer publishing any data, but when using the 'recovery' method for firmware updating, the module does communicate with Teseo_Suite, but it stops responding on the CRC step.  I'm using an FTDI and can see both RX and TX LEDs illuminate during the process,  but neither light up during the CRC step.  Any help with this would be greatly appreciated.

Thanks in advance, 

-Jake

3 replies

Technical Moderator
May 14, 2025

Hi Jake,

Can you please refer to this post regarding CRC error you are getting?

Solved: LIV4F firmware update protocol - STMicroelectronics Community

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
JCharetteAuthor
Associate II
May 14, 2025

Thank you for the reply.  I did come across that in my searches, but I believe my issue differs a bit.  In my case, I cannot get the firmware to update using Teseo-Suite in Windows,  in that case they are updating the firmware with their own software.  I would like to have the ability to update firmware from a linux machine, but my current issue is that I cannot seem to update the firmware at all, and the module seems to be left in a broken state, where it only communicates in the recovery mode.  IE: I need to use the reset pin to trigger a firmware update, and all goes well until the timeout occurs waiting for the CRC ack from the module.  Also, no NMEA can be read from the device in it's current state.

Thanks again, 

-Jake

Technical Moderator
May 14, 2025

Hi Jake,

When programming with Teseo Suite in Windows, can you please make sure Erase NVM and Recovery are checked.

Attaching screenshot below. Please let me know if that works

GalaxyQuest_0-1747243014517.png

 

 

 

​In order to give better visibility on the answered topics, please click on 'Accept as Solution' on the reply which solved your issue or answered your question.
JCharetteAuthor
Associate II
May 14, 2025

I tried as you suggested, double checking that my screen matched your screenshot, but am still facing the same "CRC Error" at the end of the update process.

Some additional information: 

- TeseoSuite - The version I downloaded is in a zip titled "en.teseosuitepro7-4-4.7z" but the file contained inside is titled "TeseoSuitePro7_4_3.exe"

- LIV4 Firmware - The version downloaded is in a zip titled "en.STA8041_LIV4F.7z" and the folder inside is titled "4.6.8.5.9" I tried flashing all of the contained files, all failing on the CRC Check step.  I also tried with an older firmware version I had downloaded previously, "4.6.8.5.9" but it also fails the CRC step.

Thank you again for the help!

-Jake

Tesla DeLorean
Guru
May 14, 2025

Perhaps try another machine?

Perhaps different serial adapter, or speed?

Tips, Buy me a coffee, or three.. PayPal VenmoUp vote any posts that you find helpful, it shows what's working..
JCharetteAuthor
Associate II
May 14, 2025

Thanks for the suggestions, I'll attempt with another machine, but the part confusing me is that it successfully communicates with the device up until the CRC.  I can confirm that the module,

- responds to 'TESEO_FLASHER_IDENTIFIER' with 'TESEO_FLASHER_SYNC' after a reset

- responds to 'DEVICE_START_COMMUNICATION' with an ACK

- responds to 'ImageOptions' and 'FLASHER_READY' with ACKS

- responds to each firmware-block with an ACK

Then there is the timeout 'CRC Error'

I've been attempting to write a python script for updating firmware because when implemented in our use-case, we will not be able to connect to a windows machine, instead an embedded linux computer will be used.  I was fighting the CRC timeout issue, and figured I'd sanity check myself by using TeseoSuite, but it seems to be having the same trouble as my script.

I'd have thought I bricked the device, but the majority of the communication goes fine, it's just that last step, the CRC check, times out.

I have another module I will try to update via TeseoSuite; does it seem possible/plausible that it can be bricked, even though all of the above-listed communication goes fine? The device was never unexpectedly powered-off during an attempted update or otherwise.