Unable to update GPy Modem, Stuck at 0%
Im stuck trying to update the GPy modem to the latest firmware. We just received a batch of these in and following upgrading the system firmware to 1.18.2.r7 im trying to update them to the latest LTE-M modem firmware 33080 to 41065...however.... whenever i try to run the upgrade it gets stuck at 0% and nothing happens even if it sits for hours. I have run the upgrade process in debug mode to get more information and ill post it here:
<<< Welcome to the SQN3330 firmware updater [1.2.5] >>> File upgdiff_33080-to-41065.dup has size 1658508 mirror? False recover? False resume? False direct? False atneg_only? False bootrom? False load_fff? True baudrate: 921600 target_baudrate: 921600 Setting port COM9 Setting baudrate to 921600 Initial prepartion complete... Loading upgdiff_33080-to-41065.dup Attempting AT wakeup...  b'\r\nERROR\r\n' count=1 b'\r\nOK\r\n' AT+BIND=AT returned b'\r\nOK\r\n' ATE0 returned b'\r\nOK\r\n' Entering upgrade mode... Sending AT+SMLOG? AT+SMLOG? returned b'\r\n+SMLOG: LOG_INHERIT\r\nOK\r\n' AT+SMOD? returned 2 Sending AT+FSRDFILE="/fs/crashdump" AT+FSRDFILE="/fs/crashdump" returned b'\r\n\r\nERROR\r\n' AT+SQNSUPGRADENTF="started" returned b'\r\nOK\r\n' Sending AT+SQNWL="sqndcc",2 AT+SQNWL="sqndcc",2 returned b'\r\nERROR\r\n' Sending AT+CFUN=4 AT+CFUN=4 returned b'\r\nOK\r\n' Starting STP [FFF] Sending AT+SMSTPU Starting STP code upload running m.wipe running m.reset magic=0x74736166, op=0x80, sid=0x0, plen=0x0, tid=0x0, hcrc=0x0, pcrc=0x0 Correct SRSP signature: 0x74736166 running m.open_session Session opened: version 1, max transfer 8192 bytes running push(m) Sending 1658508 bytes: [ ] 0%
Any suggestions as to what is going on?
@noviniumJeef : I am not sure if the modem firmware update problem that you have was caused by this, but it has been officially acknowledged by Pycom that some devices come with the modem File system in Read-Only state due to a bug in the modem firmware, and in this case, you will get the message
Received ERROR from AT+SMSWBOOT=3,1! Aborting!when trying to upgrade the modem firmware, regardless of the method.
If this is your case, you should contact Pycom to have the board replaced for you.
( Reference: GitHub - Fail to upgrade GPy LTE Modem #289 )
rskoniec last edited by
@rskoniec Thanks for the quick reply. I dont have an SD card connected to it so I cant update from an SD but I have tried doing the full procedure and it failed with the following:
>>> import sqnsupgrade >>> sqnsupgrade.run('COM9','CATM1-41065.dup') <<< Welcome to the SQN3330 firmware updater [1.2.5] >>> Firmware file is too big to load via FFF method. Using ON_THE_FLY Attempting AT wakeup... Received ERROR from AT+SMSWBOOT=3,1! Aborting!
If I use the the updater I get an unable to start error:
>>> import sqnsupgrade >>> sqnsupgrade.run('COM9','CATM1-41065.dup','updater.elf') <<< Welcome to the SQN3330 firmware updater [1.2.5] >>> Failed to start STP mode!
Is it always more stable to do the update via SD?
rskoniec last edited by rskoniec
@noviniumJeef Did you try SD card update method? Example is here. You have the latest stable board f/w installed, so automatically you have the latest stable version of
sqnsupgradelibrary. I'm always using full update method (not upgdiff dup file) and with
pycom.lte_modem_en_on_boot(False). After fresh board start I'm doing the procedure like below on my FiPy:
from machine import SD import sqnsupgrade sd = SD() os.mount(sd, '/sd') # mount SD card os.listdir('/sd') # list SD card content to verify that files are accessible sqnsupgrade.run('/sd/modem-file.dup', '/sd/updater.elf') # start upgrade process