Cannot Upgrade Sequans Modem Firmware - Bricked



  • BOARD INFO

    Pycom MicroPython 1.20.0.rc13 [v1.9.4-94bb382] on 2019-08-22; FiPy with ESP32
    Type "help()" for more information.
    >>> import machine
    >>> machine.info()
    ---------------------------------------------
    System memory info (in bytes)
    ---------------------------------------------
    MPTask stack water mark: 9464
    ServersTask stack water mark: 3684
    LoRaTask stack water mark: 3548
    SigfoxTask stack water mark: 2932
    TimerTask stack water mark: 2160
    IdleTask stack water mark: 584
    System free heap: 365124
    ---------------------------------------------
    >>> import os
    >>> os.uname()
    (sysname='FiPy', nodename='FiPy', release='1.20.0.rc13', version='v1.9.4-94bb382 on 2019-08-22', machine='FiPy with ESP32', lorawan='1.0.2', sigfox='1.0.1')```Pycom MicroPython 1.20.0.rc13 [v1.9.4-94bb382] on 2019-08-22; FiPy with ESP32
    Type "help()" for more information.
    
    

    UPGRADE CODE

    from machine import SD
    sd = SD()
    import sqnsupgrade
    os.mount(sd, '/sd')    # mount it
    os.listdir('/sd')
    sqnsupgrade.run('/sd/upgdiff_33080-to-41019.dup', '/sd/updater.elf', debug=True)
    time.sleep(5)
    sqnsupgrade.run('/sd/NB1-41019.dup', debug=True)
    

    UPGRADE DEBUG

    >>> 
    >>> 
    <<< Welcome to the SQN3330 firmware updater [1.2.6] >>>
    >>> FiPy with firmware version 1.20.0.rc13
    File /sd/updater.elf has size 371307
    File /sd/NB1-41019.dup has size 5835531
    The current delay is 1000
    Response (+++ #1): None
    Response (AT #1) None
    Response (AT #3) None
    Response (AT #4) None
    Response (AT #1 @ 115200) b'ERROR\r\n'
    Response (AT #2 @ 115200) b'OK\r\n'
    Response (AT+SMOD?) b'0\r\nOK\r\n'
    Converting response: 0 to int...
    Modem state: 0
    Success1? True
    mirror? False  recover? True  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 115200 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/updater.elf
    Entering recovery mode
    AT+SMOD? returned 0
    Attempting AT auto-negotiation... with baudrate 115200 and target_baudrate 921600
    b'OK\r\n'
    Setting baudrate to 921600
    b'OK\r\n'
    Checking SMOD
    AT+SMOD? returned b'0'
    Starting STP code upload
    running m.wipe
    running m.reset
    magic=0x74736166, op=0x80, sid=0x0, plen=0x0, tid=0x0, hcrc=0x0, pcrc=0xFEEC
    Correct SRSP signature: 0x74736166
    running m.open_session
    Session opened: version 1, max transfer 2048 bytes
    running push(m)
    Sending 371307 bytes: [########################################] 100%
    running dev.set_timeout(2)
    running m.reset(True)
    Waiting for updater to load... [921600]
    b'\x80\x80\x80\x00\x80\x00\x80\x80\x80\x00\x80\x80\x80\x00\x80\x80\x00\x00\x80\x00\x00\x80\x00\x00\x80'
    count=1
    b''
    count=2
    b''
    count=3
    b''
    count=4
    b''
    count=5
    b''
    count=6
    b''
    count=7
    b''
    count=8
    b''
    count=9
    b''
    count=10
    


  • FINALLY GOT IT TO SUCCEED

    >> 
    >>> 
    <<< Welcome to the SQN3330 firmware updater [1.2.6] >>>
    >>> FiPy with firmware version 1.20.2.rc6
    File /sd/updater.elf has size 430284
    File /sd/CATM1-41065.dup has size 6160982
    The current delay is 1000
    Response (+++ #1): None
    Response (AT #1) None
    Response (AT #3) None
    Response (AT #4) None
    Response (AT #1 @ 115200) b'ERROR\r\n'
    Response (AT #2 @ 115200) b'OK\r\n'
    Response (AT+SMOD?) b'0\r\nOK\r\n'
    Converting response: 0 to int...
    Modem state: 0
    Success1? True
    mirror? False  recover? True  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 115200 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/updater.elf
    Entering recovery mode
    AT+SMOD? returned 0
    Attempting AT auto-negotiation... with baudrate 115200 and target_baudrate 921600
    b'OK\r\n'
    Setting baudrate to 921600
    b'OK\r\n'
    Checking SMOD
    AT+SMOD? returned b'0'
    Starting STP code upload
    running m.wipe
    running m.reset
    magic=0x74736166, op=0x80, sid=0x0, plen=0x0, tid=0x0, hcrc=0x0, pcrc=0xFEEC
    Correct SRSP signature: 0x74736166
    running m.open_session
    Session opened: version 1, max transfer 2048 bytes
    running push(m)
    Sending 430284 bytes: [########################################] 100%
    running dev.set_timeout(2)
    running m.reset(True)
    start returned True type <class 'bool'>
    Waiting for updater to load... [921600]
    b'\r\nOK\r\n'
    Upgrader loaded successfully, modem is in update mode
    Success2? True
    mirror? False  recover? False  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 921600 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/CATM1-41065.dup
    Attempting AT wakeup... [921600]
    b'\r\nOK\r\n'
    Entering recovery mode
    AT+SMOD? returned 4
    Starting STP ON_THE_FLY
    Sending AT+SMSTPU="ON_THE_FLY"
    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 6160982 bytes: [########################################] 100%
    running dev.set_timeout(2)
    running m.reset(True)
    start returned True type <class 'bool'>
    Code download done, returning to user mode
    Waiting for modem to finish the update...
    <<<=== DO NOT DISCONNECT POWER ===>>> [921600]
    b''
    count=1
    b'\r\nOK\r\n\r\nOK\r\n'
    AT+SMUPGRADE? returned b'+SMUPGRADE: success\r\n\r\nOK\r\n' [timeout: 0]
    AT+SMSWBOOT? returned b'FFH\r\nOK\r\n'
    AT+SMUPGRADE? returned b'+SMUPGRADE: success\r\n\r\nOK\r\n'
    This is my result: success
    Resetting.AT+SMSWBOOT=1,1 returned b'+SMUPGRADE: success\r\n\r\nOK\r\n'
    .........................
    Sending AT+SQNSUPGRADENTF="success"
    AT+SQNSUPGRADENTF="success" returned b'\r\nOK'
    Sending AT+FSRDFILE="/fs/crashdump"
    AT+FSRDFILE="/fs/crashdump" returned b'\r\nOK'
    Checking bootrom & application
    Checking line 
    Checking line SYSTEM VERSION
    Checking line ==============
    Checking line   FIRMWARE VERSION
    Checking line     Bootloader0  : 5.1.1.0 [41065]
    old_br: False
    Checking line     Bootloader1* : 5.1.1.0 [41065]
    Checking line     Bootloader2  : 5.1.1.0 [41065]
    Checking line     NV Info      : 1.1,0,0
    Checking line     Software     : 5.1.1.0 [41065] by robot-soft at 2018-12-17 13:03:40
    old_sw: False
    Checking line     UE           : 5.0.0.0d
    Checking line   COMPONENTS
    Checking line     ZSP0         : 1.0.99-13616
    Checking line     ZSP1         : 1.0.99-12376
    Checking line 
    Checking line OK
    Checking line 
    Returning: False
    Your modem has been successfully updated.
    Here is the current firmware version:
    
    mirror? False  recover? False  resume? True  direct? True  atneg_only? False bootrom? False load_fff? False
    baudrate: 921600 target_baudrate: 921600
    SYSTEM VERSION
    ==============
      FIRMWARE VERSION
        Bootloader0  : 5.1.1.0 [41065]
        Bootloader1* : 5.1.1.0 [41065]
        Bootloader2  : 5.1.1.0 [41065]
        NV Info      : 1.1,0,0
        Software     : 5.1.1.0 [41065] by robot-soft at 2018-12-17 13:03:40
        UE           : 5.0.0.0d
      COMPONENTS
        ZSP0         : 1.0.99-13616
        ZSP1         : 1.0.99-12376
    
    IMEI: 354346094393633
    >
    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> 
    >>> Connecting to COM8...
    WMAC: 240AC4C829E0
    Firmware: 1.20.2.rc6
    Pybytes: 1.3.1
    Initialized watchdog for WiFi and LTE connection with timeout 1260000 ms
    WiFi connection established
    Pybytes connected successfully (using the built-in pybytes library)
    Pybytes configuration read from /flash/pybytes_config.json
    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    

    Not to try the NB version of the Modem Firmware



  • TRIED AGAIN

    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> Running C:\Users\Nathan\Documents\Atom Projects\Upgrade Modem\upgrade.py
    
    >>> 
    >>> 
    <<< Welcome to the SQN3330 firmware updater [1.2.6] >>>
    >>> FiPy with firmware version 1.20.2.rc6
    File /sd/updater.elf has size 430284
    File /sd/upgdiff_33080-to-41065.dup has size 1658508
    The current delay is 1000
    Response (+++ #1): None
    Response (AT #1) None
    Response (AT #3) None
    Response (AT #4) None
    Response (AT #1 @ 115200) b'ERROR\r\n'
    Response (AT #2 @ 115200) b'OK\r\n'
    Response (AT+SMOD?) b'0\r\nOK\r\n'
    Converting response: 0 to int...
    Modem state: 0
    Success1? True
    mirror? False  recover? True  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 115200 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/updater.elf
    Entering recovery mode
    AT+SMOD? returned 0
    Attempting AT auto-negotiation... with baudrate 115200 and target_baudrate 921600
    b'OK\r\n'
    Setting baudrate to 921600
    b'OK\r\n'
    Checking SMOD
    AT+SMOD? returned b'0'
    Starting STP code upload
    running m.wipe
    running m.reset
    magic=0x74736166, op=0x80, sid=0x0, plen=0x0, tid=0x0, hcrc=0x0, pcrc=0x6
    Correct SRSP signature: 0x74736166
    running m.open_session
    Session opened: version 1, max transfer 2048 bytes
    running push(m)
    Sending 430284 bytes: [########################################] 100%
    running dev.set_timeout(2)
    running m.reset(True)
    start returned True type <class 'bool'>
    Waiting for updater to load... [921600]
    b'\x80\x80\x80\x00\x80\x00\x80\x80\x80\x00\x80\x80\x80\x00\x80\x80\x00\x00\x80\x00\x00\x80\x00\x00\x80'
    count=1
    b''
    count=2
    b''
    count=3
    b''
    count=4
    b''
    count=5
    b''
    count=6
    b''
    count=7
    b''
    count=8
    b''
    count=9
    b''
    count=10
    b''
    count=11
    b''
    count=12
    b''
    count=13
    b''
    count=14
    b''
    count=15
    b''
    count=16
    b''
    count=17
    b''
    count=18
    b''
    count=19
    b''
    count=20
    b''
    count=21
    b''
    count=22
    b''
    count=23
    b''
    count=24
    b''
    count=25
    b''
    count=26
    b''
    count=27
    b''
    count=28
    b''
    count=29
    b''
    count=30
    b''
    count=31
    b''
    count=32
    b''
    count=33
    b''
    count=34
    b''
    count=35
    b''
    count=36
    b''
    count=37
    b''
    count=38
    b''
    count=39
    b''
    count=40
    b''
    count=41
    b''
    count=42
    b''
    count=43
    b''
    count=44
    b''
    count=45
    b''
    count=46
    b''
    count=47
    b''
    count=48
    b''
    count=49
    b''
    count=50
    b''
    count=51
    b''
    count=52
    b''
    count=53
    b''
    count=54
    b''
    count=55
    b''
    count=56
    b''
    count=57
    b''
    count=58
    b''
    count=59
    b''
    count=60
    b''
    count=61
    b''
    count=62
    b''
    count=63
    b''
    count=64
    b''
    count=65
    b''
    count=66
    b''
    count=67
    b''
    count=68
    b''
    count=69
    b''
    count=70
    b''
    count=71
    b''
    count=72
    b''
    count=73
    b''
    count=74
    b''
    count=75
    b''
    count=76
    b''
    count=77
    b''
    count=78
    b''
    count=79
    b''
    count=80
    b''
    count=81
    b''
    count=82
    b''
    count=83
    b''
    count=84
    b''
    count=85
    b''
    count=86
    b''
    count=87
    b''
    count=88
    b''
    count=89
    b''
    count=90
    b''
    count=91
    b''
    count=92
    b''
    count=93
    b''
    count=94
    b''
    count=95
    b''
    count=96
    b''
    count=97
    b''
    count=98
    b''
    count=99
    b''
    count=100
    b''
    Success2? False
    Unable to load updater from /sd/updater.elf
    Traceback (most recent call last):
      File "<stdin>", line 8, in <module>
    NameError: name 'time' isn't defined
    >
    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> 
    >>> 
    


  • TRIED AGAIN WITH DIFFERENT FIRMWARE

    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> 
    >>> 
    >>> 
    >>> 
    <<< Welcome to the SQN3330 firmware updater [1.2.6] >>>
    >>> FiPy with firmware version 1.20.2.rc6
    File /sd/updater.elf has size 371307
    File /sd/NB1-41019.dup has size 5835531
    The current delay is 1000
    Response (+++ #1): None
    Response (AT #1) None
    Response (AT #3) None
    Response (AT #4) None
    Response (AT #1 @ 115200) b'ERROR\r\n'
    Response (AT #2 @ 115200) b'OK\r\n'
    Response (AT+SMOD?) b'0\r\nOK\r\n'
    Converting response: 0 to int...
    Modem state: 0
    Success1? True
    mirror? False  recover? True  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 115200 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/updater.elf
    Entering recovery mode
    AT+SMOD? returned 0
    Attempting AT auto-negotiation... with baudrate 115200 and target_baudrate 921600
    b'OK\r\n'
    Setting baudrate to 921600
    b'OK\r\n'
    Checking SMOD
    AT+SMOD? returned b'0'
    Starting STP code upload
    running m.wipe
    running m.reset
    magic=0x74736166, op=0x80, sid=0x0, plen=0x0, tid=0x0, hcrc=0x0, pcrc=0xFEEC
    Correct SRSP signature: 0x74736166
    running m.open_session
    Session opened: version 1, max transfer 2048 bytes
    running push(m)
    Sending 371307 bytes: [########################################] 100%
    running dev.set_timeout(2)
    running m.reset(True)
    start returned True type <class 'bool'>
    Waiting for updater to load... [921600]
    b'\r\nOK\r\n'
    Upgrader loaded successfully, modem is in update mode
    Success2? True
    mirror? False  recover? False  resume? True  direct? False  atneg_only? False bootrom? False load_fff? False
    baudrate: 921600 target_baudrate: 921600
    Initial prepartion complete...
    Loading /sd/NB1-41019.dup
    Attempting AT wakeup... [921600]
    b'\r\nOK\r\n'
    Entering recovery mode
    AT+SMOD? returned 4
    Starting STP ON_THE_FLY
    Sending AT+SMSTPU="ON_THE_FLY"
    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 5835531 bytes: [###                                     ]   7%SRSP header too small: 9
    start returned False type <class 'bool'>
    Code download failed[1], aborting!
    Traceback (most recent call last):
      File "<stdin>", line 8, in <module>
    NameError: name 'time' isn't defined
    >
    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> 
    >>> ets Jun  8 2016 00:22:57
    
    rst:0x7 (TG0WDT_SYS_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT)
    configsip: 0, SPIWP:0xee
    clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00
    mode:DIO, clock div:1
    load:0x3fff8020,len:8
    load:0x3fff8028,len:2140
    ho 0 tail 12 room 4
    load:0x4009fa00,len:19760
    entry 0x400a05bc
    WMAC: 240AC4C829E0
    Firmware: 1.20.2.rc6
    Pybytes: 1.3.1
    Initialized watchdog for WiFi and LTE connection with timeout 1260000 ms
    WiFi connection established
    Pybytes connected successfully (using the built-in pybytes library)
    Pybytes configuration read from /flash/pybytes_config.json
    Pycom MicroPython 1.20.2.rc6 [v1.11-01f49f7] on 2020-02-28; FiPy with ESP32
    Pybytes Version: 1.3.1
    Type "help()" for more information.
    >>> 
    

Log in to reply
 

Pycom on Twitter