Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    New LTE Firmware release v1.18.1.r3 & CAT-M1 firmware & modem updater

    Scheduled Pinned Locked Moved Announcements & News
    firmwarelte
    28 Posts 10 Posters 5.7k Views 12 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • X Offline
      Xykon administrators @rskoniec
      last edited by

      @rskoniec said in New LTE Firmware release v1.18.1.r3 & CAT-M1 firmware & modem updater:

      @Xykon Just for sure, can I safely use SD card as source for differential update?

      Yes the firmware can also be loaded from an SD card without problems.

      Christian Ehlers

      1 Reply Last reply Reply Quote 0
      • P Offline
        peekay123 @Xykon
        last edited by peekay123

        @xykon I haven't upgraded my FiPy yet, waiting on a failure-free process. To apply these upgrades do I apply BOTH the CAT-M1 and NB-Iot firmware upgrades or is it only one or the other?

        Anyone?

        1 Reply Last reply Reply Quote 0
        • J Offline
          JohnPiantanida
          last edited by

          I updated the Fipy just fine. But when I try to upgrade the modem I get "Exception when checking file upgdiff_38638-to-39529.dup... wrong file name?"

          I placed the file in the root of /flash. Then:

          import sqnsupgrade
          sqnsupgrade.run('upgdiff_38638-to-39529.dup')

          Also tried with upgdiff_33080-to-39529.dup with the same results.

          Any ideas?

          J 1 Reply Last reply Reply Quote 0
          • J Offline
            JohnPiantanida @JohnPiantanida
            last edited by

            Never mind. It was hidden formatting in my copy/paste. Typed out, it worked just fine.

            1 Reply Last reply Reply Quote 0
            • T Offline
              tlanier @Xykon
              last edited by

              @xykon

              When I do an import sqnsupgrade I get an error ImportError: no module named 'sqnsupgrade'

              I'm running Pycom MicroPython 1.19.0.b4 on 2018-07-13 which was flashed using the latest download from [https://pycom.io/downloads/]

              How can I get the latest code on my GPy?

              Do I need to download the code from GitHub to upgrade?

              I've tried downloading and building the code from Ubuntu 18.04. I get an error on the last step when trying to flash the code to the GPy.

              $ sudo make BOARD=GPY flash

              make: *** No rule to make target '/components/esp32/ld/esp32.ld', needed by 'build/GPY/release/esp32_out.ld'

              I will describe in detail my steps to download and build if that is necessary.

              T 1 Reply Last reply Reply Quote 0
              • T Offline
                tlanier @tlanier
                last edited by tlanier

                @tlanier
                Got the update to work!

                Here's some things that might help other people getting started like me:

                • The Pycom Firmware Update program (V1.15.1) is used to update the GPy firmware to the stable version 1.18.1 r3. The Hi Speed must be selected or the update will time out.
                  [https://pycom.io/downloads/]

                • The upgdiff_38638-to-39529.dup file is placed in the /flash directory, which is the same directory python code is placed. I originally placed the file in a folder I created called flash thinking my code was in the root folder. In fact my code was already in the /flash folder; if you have your project open in Visual Studio Code pointing to the flash folder, you may not notice this.

                • Even after changing global Pymakr.json to include .dup files (sync_file_types), Visual Studio Code will not upload the large file (times out). I had to use FTP instead.

                Connect using WIFI
                SSID: gpy-wlan-becc
                FTP to 192.168.4.1
                user: micro
                password: python
                FileZilla - must select passive + limit number of simultaneous connects to 1

                • Don't forget to erase the file after the update to free up space.
                1 Reply Last reply Reply Quote 1
                • D Offline
                  danielm @Xykon
                  last edited by danielm

                  @xykon
                  Is v1.18.1.r3 supposed to work with NB1-38729?
                  I am testing on FiPy and calling network.LTE() throws OSError: the requested operation failed - not immediately but after some timeout.

                  Pycom MicroPython 1.18.1.r3 [v1.8.6-849-3aac0f3] on 2018-11-08; FiPy with ESP32
                  Type "help()" for more information.
                  >>> import sqnsupgrade
                  >>> sqnsupgrade.info()
                  <<< Welcome to the SQN3330 firmware updater [1.2.0] >>>
                  >>> FiPy with firmware version 1.18.1.r3
                  Your modem is in application mode. Here is the current version:
                  UE6.0.0.0
                  LR6.0.0.0-38729
                  >>> import network
                  >>> lte = network.LTE()
                  Traceback (most recent call last):
                    File "<stdin>", line 1, in <module>
                  OSError: the requested operation failed
                  
                  X 1 Reply Last reply Reply Quote 0
                  • X Offline
                    Xykon administrators @danielm
                    last edited by

                    @danielm said in New LTE Firmware release v1.18.1.r3 & CAT-M1 firmware & modem updater:

                    Is v1.18.1.r3 supposed to work with NB1-38729?
                    I am testing on FiPy and calling network.LTE() throws OSError: the requested operation failed - not immediately but after some timeout.

                    The sqnsupgrade scripts use the UART class to connect directly to the modem from MicroPython and sometimes it doesn't release the peripheral, which causes LTE.init() to hang (it's trying to send several commands to the modem but never gets a response). You can try to run del sqnsupgrade to force unload it otherwise a hard reset should fix it too.

                    If this happens even without loading sqnsupgrade, I'm currently testing NB1-40343 which fixes the DNS issue and a few other things. I'm expecting to release this within the next 24 hours and so far have not observed any issues during LTE.init() that are not related to sqnsupgrade.

                    Christian Ehlers

                    X 1 Reply Last reply Reply Quote 0
                    • X Offline
                      Xykon administrators @Xykon
                      last edited by Xykon

                      @danielm I'm not quite sure why but it also makes a difference how you initialise the LTE class.

                      Could you please try this instead:

                      from network import LTE
                      lte = LTE()
                      

                      Christian Ehlers

                      D 1 Reply Last reply Reply Quote 0
                      • D Offline
                        danielm @Xykon
                        last edited by danielm

                        @xykon
                        With v1.18.1.r3 suggested way to initialize LTE from REPL worked:

                        from network import LTE
                        lte = LTE()
                        

                        However it did not work in our application.
                        Then I noticed v1.18.1.r4 pushed to the GitHub. I built it and tested LTE initialization which works both ways without any issues and in our application as well.

                        The problem is that any socket communication is almost impossible. Maybe there are some timing issues on the UART interface of Sequans modem? Could it behave differently with NB1-40343?

                        Edit: lte.isattached returns True even without calling lte.attach(). Snychro state of the modem is OFF.

                        Pycom MicroPython 1.18.1.r4 [dfa1176] on 2018-11-12; FiPy with ESP32
                        Type "help()" for more information.
                        >>> from network import LTE
                        >>> lte = LTE()
                        >>> lte.isattached()
                        True
                        >>> lte.send_at_cmd('AT!="showphy"', delay = 100)
                        '\r\nDL SYNCHRO STATISTICS\r\n=====================\r\n    Synchro state                         : OFF\r\n    PPU SIB1 ACQ watchdog                 : 0\r\n    Frequency Hypothesis RF  (Hz)         : 0\r\n    RSRP (dBm)                            : 0.00\r\n    RSRQ  (dB)                            : 0.00\r\n    Channel estimation state (Cell-spec.) : LOW CINR\r\n    Channel estimation state (UE-spec.)   : LOW CINR\r\n    Channel estimation state (MBSFN)      : LOW CINR\r\n    Channel estimation CINR               : 0.00\r\n    Channel length                        : SHORT\r\n  AGC\r\n    AGC RX gain (dB)                      : 0.00\r\n    RX PSD BO (dBFs)                      : 0.00\r\n    RX PSD (dBm)                          : 0.00\r\n    Noise level RS (dBm)                  : 0.00\r\n    Digital gain (dB)                     : 0.00\r\n    CINR RS (dB)                          : 0.00\r\n  NARROWBANDS\r\n    Last DL NB                            : 0\r\n    Last UL NB                            : 0\r\n  AFC\r\n    Frequency offset RF  (Hz)             : 0\r\n    Frequency offset BB  (Hz)             : 0\r\n  PBCH\r\n    MIB received quantity                 : 0\r\n    MIB timeout quantity                  : 0\r\n\r\nOK\r\n'
                        

                        Synchro state remains to be OFF even after calling lte.attach()

                        1 Reply Last reply Reply Quote 0
                        • P Offline
                          panda
                          last edited by

                          I am seeing different behavior when connecting to CAT M1 with 1.18.1.r3 and 39529.

                          Previously the following would work fine:

                          lte = LTE(carrier='verizon')
                          lte.attach()

                          ...

                          lte.connect(cid=3)

                          With the latest firmwares I get the following error:

                          lte.connect(cid=3)
                          Traceback (most recent call last):
                          File "<stdin>", line 1, in <module>
                          OSError: the requested operation failed

                          I tried with other carrier and cid values and same result.

                          If I remove the carrier on init and cid parameter I can connect successfully. Are there new rules about how to connect to various carriers?

                          1 Reply Last reply Reply Quote 0
                          • P Offline
                            panda
                            last edited by

                            @danielm said in New LTE Firmware release v1.18.1.r3 & CAT-M1 firmware & modem updater:

                            @xykon I see the same thing with 1.18.1.r3. I can init the LTE class form the REPL, but not in a py script. The init just hangs.

                            I traced it to activity before the init. For example the following works:

                            def initLTE():
                                lte = LTE()
                            

                            And the following hangs on the init

                            import logger
                            def initLTE():
                               logger.info("bla bla bla bla")
                               lte = LTE()
                            

                            I don't think the issue is specific to the logger class, but something in the logger causes the issue.

                            Again, No issues with 1.18.1.r1

                            1 Reply Last reply Reply Quote 0
                            • X Offline
                              Xykon administrators
                              last edited by

                              @danielm @panda

                              As mentioned a fix for the init issue is already on GitHub and I will release this shortly. I'm also preparing the new NB-IoT firmware release for today.

                              lte.isattached returns True even without calling lte.attach().

                              Does this still happen with v1.18.1.r4? If it does, could you please check the two commands:

                              print(lte.send_at_cmd('AT+CGATT?'))
                              print(lte.send_at_cmd('AT+CEREG?'))

                              According to Sequans, AT+CGATT? should be enough to detect if the modem is attached, however I found this is not always the case so I kept a mix of the "old" CEREG? and "new" CGATT method as the CEREG method doesn't always work correctly either.

                              The problem is that any socket communication is almost impossible. Maybe there are some timing issues on the UART interface of Sequans modem? Could it behave differently with NB1-40343?

                              Please check with the new firmware and let us know.

                              I am seeing different behavior when connecting to CAT M1 with 1.18.1.r3 and 39529.

                              I tested this with our Amarisoft LTE-M emulator but did not observe this issue so far.

                              Christian Ehlers

                              P 1 Reply Last reply Reply Quote 0
                              • P Offline
                                panda @Xykon
                                last edited by

                                @xykon sorry I missed the r4 post. I find this forum hard to follow. Can't put my finger on it, but the reverse order of posts is one thing non-intuitive for me.

                                I'll try r4 in the AM. Thanks.

                                X 1 Reply Last reply Reply Quote 0
                                • X Offline
                                  Xykon administrators @panda
                                  last edited by

                                  @panda said in New LTE Firmware release v1.18.1.r3 & CAT-M1 firmware & modem updater:

                                  the reverse order of posts is one thing non-intuitive for me

                                  You can change the "Sort by" at the bottom of the screen and the forum should remember that as long as you are logged in.

                                  0_1542074689924_Screenshot 2018-11-13 03.02.18.png

                                  Christian Ehlers

                                  1 Reply Last reply Reply Quote 0
                                  • W Offline
                                    wghirakawa
                                    last edited by

                                    @xykon I used Filezilla to upload the 33080-to-395289 diff file to /flash. Then i executed the import sqnsupgrade and .run. It says attempting AT Wakeup... then session opened: version 1 max transfer 8192 bytes. sending 1211459 bytes: then it just pauses. Not sure whats going on. I have the v1.18.1.r4 firmware on my device but never upgrade the Sqns firmware before.

                                    If everyone in the world could do their passion, the world would be an unbelievable place!

                                    R 1 Reply Last reply Reply Quote 0
                                    • R Offline
                                      rskoniec @wghirakawa
                                      last edited by

                                      @wghirakawa My last post from this thread could be helpful https://forum.pycom.io/topic/3995/fipy-firmware-upgrade-failed-cat-m1/26

                                      The machine is working as good as it's code.

                                      1 Reply Last reply Reply Quote 0
                                      • K Offline
                                        kjm
                                        last edited by

                                        Everytime Filezilla tries to upload upgdiff_33080-to-39529.dup to the gpy it crashes once the file size gets to 786,432 The cert, lib & sys folders are all empty so I can't figure out why we're hitting a wall? New modem firmware is scary enough without trying the sd card route, I was really hoping to do it from the onboard flash.

                                        K 1 Reply Last reply Reply Quote 0
                                        • K Offline
                                          kjm @kjm
                                          last edited by

                                          @kjm Status:
                                          Does this give anyone a clue as to why it always stops after 786432 bytes?

                                          Starting upload of C:\Users\Kris McLean\Google Drive (1)\My Documents\Pycom\CATM1-39529\upgdiff_33080-to-39529.dup
                                          Status: Retrieving directory listing of "/flash"...
                                          Command: TYPE I
                                          Response: 200
                                          Command: PASV
                                          Response: 227 (192,168,4,1,7,232)
                                          Command: LIST
                                          Response: 150
                                          Response: 226
                                          Command: PASV
                                          Response: 227 (192,168,4,1,7,232)
                                          Command: APPE upgdiff_33080-to-39529.dup
                                          Response: 502
                                          Error: Critical file transfer error

                                          1 Reply Last reply Reply Quote 0
                                          • K Offline
                                            kjm
                                            last edited by

                                            More than 1 way to skin a cat! Renamed upgdiff_33080-to-39529.dup to upgdiff_33080-to-39529.py, uploaded it via the upload button in atom, used Filezilla to change the extension back to .dup in the gpy flash then upgraded the modem.

                                            Your modem has been successfully updated.
                                            Here is the current firmware version:
                                            
                                            UE5.0.0.0d
                                            LR5.1.1.0-39529
                                            
                                            1 Reply Last reply Reply Quote 0

                                            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                                            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                                            With your input, this post could be even better 💗

                                            Register Login
                                            • 1
                                            • 2
                                            • 1 / 2
                                            • First post
                                              Last post

                                            Pycom on Twitter

                                            Pycom