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

    Potential device lockdown - Network providers

    Scheduled Pinned Locked Moved GPy
    gpycat-m1fipytelstra
    42 Posts 12 Posters 10.6k Views 15 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 @timh
      last edited by

      @timh said in Potential device lockdown - Network providers:

      @daniel oh and the firmware isn't available yet (a few hours have passed ;-)

      The file is now only available.

      Christian Ehlers

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

        @xykon Awesome. Thanks

        M 1 Reply Last reply Reply Quote 0
        • M Offline
          micksta @timh
          last edited by micksta

          @timh

          Telstra still no go (for me anyway'z), seems to find tower but then issues out - tried several location around town.. Some notes below.

          Modem f/w --> FIPY_GPY_CATM1_36417.dup

          (sysname='GPy', nodename='GPy', release='1.17.5.b6', version='v1.8.6-849-56d00234 on 2018-05-18', machine='GPy with ESP32')

          I'm not calling lte.attach(), use 'AT+CFUN=1' for that --> snippet of below below was definitely working before changes to telstra network

          'AT!="addscanfreq band=28 dl-earfcn=9410"' # lte frequency band - from forum

          AT+CGDCONT=1,"IP","mdata.net.au"' # Aldi sim / Aldi APN (aka Telstra network)


          FSM (loops through the below)
          SCANNING
          SYNCING
          STOPPED

          -------- e.g. --------------------------------

          SYSTEM FSM

          +--------------------------+--------------------+
          |            FSM           |        STATE       |
          +--------------------------+--------------------+
          | RRC TOP FSM              |SYNCING             |
          | RRC SEARCH FSM           |WAIT_SYNC           |
          | RRC ACTIVE FSM           |NULL                |
          | PMM PLMN FSM             |NORM_WAITCELL       |
          | EMM MAIN FSM             |NULL                |
          | EMM AUTH FSM             |KASME_DEFINED       |
          | EMM CONN FSM             |NULL                |
          | EMM TAU FSM              |NULL                |
          | EMM TEST FSM             |NULL                |
          | ESM BEARER FSM           |BEARER_NULL         |
          | SMS MT FSM               |IDLE                |
          | SMS MO FSM               |IDLE                |
          | HP MAIN FSM              |IDLE                |
          | HP USIM FSM              |READY               |
          | HP SMS MO FSM            |IDLE                |
          | HP SMS MT FSM            |IDLE                |
          | HP CAT FSM               |IDLE                |
          +--------------------------+--------------------+
          

          DL SYNCHRO STATISTICS (loops through some of the below but random)
          CELL_SEARCH
          FAST SCAN
          FRAME_UPDATE
          MIB_DETECT
          IDLE
          RSRP

          -------- e.g. --------------------------------

          DL SYNCHRO STATISTICS

          Synchro state                         : CELL_SEARCH
          PPU SIB1 ACQ watchdog                 : 0
          Frequency Hypothesis RF  (Hz)         : 0
          RSRP (dBm)                            : -21474836.00
          RSRQ  (dB)                            : 0.00
          Channel estimation state (Cell-spec.) : LOW CINR
          Channel estimation state (UE-spec.)   : LOW CINR
          Channel estimation state (MBSFN)      : LOW CINR
          Channel estimation CINR               : 5.62
          Channel length                        : SHORT
          AGC
          AGC RX gain (dB)                      : 60.22
          RX PSD BO (dBFs)                      : -23.42
          RX PSD (dBm)                          : -111.79
          Noise level RS (dBm)                  : -128.24
          Digital gain (dB)                     : 4.78
          CINR RS (dB)                          : 0.00
          NARROWBANDS
          Last DL NB                            : Central
          Last UL NB                            : 0
          AFC
          Frequency offset RF  (Hz)             : -379
          Frequency offset BB  (Hz)             : 0
          PBCH
          MIB received quantity                 : 21
          MIB timeout quantity                  : 0
          

          WITH CREG SHOWING

          +CREG: 2,0

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

            @micksta bugger ;-( I haven't had a chance to test myself yet. Up to my eyeballs. Hoping later this afternoon.

            Some my guidance on specifics from @daniel or @xykon would help a lot.

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

              Not only it is not working for me but it is even worse now (I did not think it could get any worse but it did.)

              I am not able to get a CCID from the (M2Mone) SIM card when issuing:

              send_at_cmd_pretty('AT+SQNCCID')
              

              I thought it would maybe be an issue with the SIM card itself so used a GPY that still had the previous modem firmware (FIPY_GPY_CATM1_33988.dup) with the same SIM card and it worked.

              So, summarising:

              • GPy on stable 1.18.0 with FIPY_GPY_CATM1_33988 -> Lost Telstra connectivity a few weeks ago but it can talk to the SIM card.
              • GPy on stable 1.18.0 with FIPY_GPY_CATM1_36417 -> Can't talk to SIM card, which I believe is what is producing an ERROR response when issuing
              send_at_cmd_pretty('AT!="RRC::addScanBand band=28"')
              

              It would seem we are taking one step forward and two steps backward...

              If @micksta, @timh and @Prawnhead can confirm this behaviour the problem is still there.

              P T 2 Replies Last reply Reply Quote 0
              • T Offline
                tealbrains
                last edited by tealbrains

                @tealbrains said in Potential device lockdown - Network providers:

                Not only it is not working for me but it is even worse now (I did not think it could get any worse but it did.)

                I am not able to get a CCID from the (M2Mone) SIM card when issuing:

                send_at_cmd_pretty('AT+SQNCCID')
                

                I thought it would maybe be an issue with the SIM card itself so used a GPY that still had the previous modem firmware (FIPY_GPY_CATM1_33988.dup) with the same SIM card and it worked.

                So, summarising:

                • GPy on stable 1.18.0 with FIPY_GPY_CATM1_33988 -> Lost Telstra connectivity a few weeks ago but it can talk to the SIM card.
                • GPy on stable 1.18.0 with FIPY_GPY_CATM1_36417 -> Can't talk to SIM card, which I believe is what is producing an ERROR response when issuing
                send_at_cmd_pretty('AT!="RRC::addScanBand band=28"')
                

                It would seem we are taking one step forward and two steps backward...

                If @micksta and @Prawnhead can confirm this behaviour the problem is still there.

                EDIT:
                The SIM command does work, eventually. I think the new pycom firmware blocks some commands sometimes if the modem is busy.

                @daniel
                A bit of extra info would be nice. The way the first command you mentioned needs to be sent is slightly different.

                 send_at_cmd_pretty("AT!=\"RRC::addScanBand band=28\"")
                

                It must include the escape characters, otherwise it seems to produce an ERROR. The modem won't attach though.

                M 1 Reply Last reply Reply Quote 0
                • M Offline
                  micksta @tealbrains
                  last edited by micksta

                  @tealbrains

                  Here works no probs, have 2 GPY's - different revs of modem f/w.
                  
                  Using (Aldi Sim aka Telstra & below GPy f/w)
                  (sysname='GPy', nodename='GPy', release='1.17.5.b6', version='v1.8.6-849-56d00234 on 2018-05-18', machine='GPy with ESP32')
                  
                  send_at_cmd_pretty('AT+SQNCCID?') # reads the ICCID ID on the SIM card.
                  
                  I'm also using (as @Daniel suggested below AT!)
                  
                  send_at_cmd_pretty("AT!=\"RRC::addScanBand band=28\"")
                   - System FSM & Synchro Stats still loops with no connection (although it does seem to see the tower) . CREG still stuck  --> +CREG: 2,0
                  
                  T 1 Reply Last reply Reply Quote 0
                  • T Offline
                    tealbrains @micksta
                    last edited by

                    @micksta I am guessing the AT+SQNCCID is what works without problems, right? It's a different story for the Cat-M1 connection. If you can't connect either I guess the issue is not resolved then...

                    M 1 Reply Last reply Reply Quote 0
                    • M Offline
                      micksta @tealbrains
                      last edited by robert-hh

                      @tealbrains
                      Sure CCID no prob's --> same no Connection. Had a look at some alt. LTE M1 products (googled "Certified Modules and Devices - Telstra") & ordered several SIM7000E. Will be interesting to compare.. Hopefully the Pyboards make the list soon.

                      1 Reply Last reply Reply Quote 0
                      • P Offline
                        Prawnhead @tealbrains
                        last edited by

                        @tealbrains said in Potential device lockdown - Network providers:

                        Not only it is not working for me but it is even worse now (I did not think it could get any worse but it did.)

                        I am not able to get a CCID from the (M2Mone) SIM card when issuing:

                        send_at_cmd_pretty('AT+SQNCCID')
                        

                        I thought it would maybe be an issue with the SIM card itself so used a GPY that still had the previous modem firmware (FIPY_GPY_CATM1_33988.dup) with the same SIM card and it worked.

                        So, summarising:

                        • GPy on stable 1.18.0 with FIPY_GPY_CATM1_33988 -> Lost Telstra connectivity a few weeks ago but it can talk to the SIM card.
                        • GPy on stable 1.18.0 with FIPY_GPY_CATM1_36417 -> Can't talk to SIM card, which I believe is what is producing an ERROR response when issuing
                        send_at_cmd_pretty('AT!="RRC::addScanBand band=28"')
                        

                        It would seem we are taking one step forward and two steps backward...

                        If @micksta, @timh and @Prawnhead can confirm this behaviour the problem is still there.

                        I'm using this as minimum viable code:

                        import os
                        import time
                        import machine
                        from network import LTE
                        
                        def at_cmd(command):
                            print("Command:  {}".format(command))
                            result = lte.send_at_cmd(command)
                            print("Response: {}".format(result))
                        
                        print(os.uname())
                        
                        lte = LTE()
                        
                        at_cmd('AT+CGDCONT=1,"IP","telstra.internet"')
                        at_cmd('AT!="addscanfreq band=28 dl-earfcn=9410"')
                        at_cmd('AT+CFUN=1')
                        
                        for x in range(20):
                            print("Attached? {}".format(lte.isattached()))
                            time.sleep(1)
                        
                        machine.reset()
                        

                        Result is always:

                        >>> Running Z:\Content\Content2\Chris\Pycom\Pycom GPy\Pycom Forum 2878\connect0.py
                        
                        >>>
                        >>>
                        (sysname='GPy', nodename='GPy', release='1.18.0', version='v1.8.6-849-046b350 on 2018-06-01', machine='GPy with ESP32')
                        Command:  AT+CGDCONT=1,"IP","telstra.internet"
                        Response:
                        OK
                        
                        Command:  AT!="RRC::addScanBand band=28"
                        Response:
                        
                        OK
                        
                        Command:  AT+CFUN=1
                        Response:
                        OK
                        
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        Attached? False
                        ets Jun  8 2016 00:22:57
                        
                        rst:0x7 (TG0WDT_SYS_RESET),boot:0x17 (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:0x3fff8028,len:8
                        load:0x3fff8030,len:1728
                        load:0x4009fa00,len:0
                        load:0x4009fa00,len:14584
                        entry 0x400a059c
                        Pycom MicroPython 1.18.0 [v1.8.6-849-046b350] on 2018-06-01; GPy with ESP32
                        Type "help()" for more information.
                        >>>
                        

                        I have tried 1 x FiPy and 1 x GPy on firmware FIPY_GPY_CATM1_33988.dup and FIPY_GPY_CATM1_36417.dup and have not had a successful lte.isattached() in 20+ attempts. However, I'm not completely confident I've got the minimum viable code right. If someone using Optus or Vodafone could post their minimum code or confirm mine (with whatever settings changes are required) I'd appreciate it!

                        • Chris
                        T 1 Reply Last reply Reply Quote 0
                        • D Offline
                          Dylan
                          last edited by Dylan

                          Hey everybody,

                          I have been using a FiPy and having the same trouble that appears to be happening to most people (maybe everybody) in Australia.

                          I was in the middle of writing something up for a new topic on FiPy but since this is basically it I'll put it here.

                          Currently the following occurs:

                          • LTE connects successfully many times in a row, but can then go for hours without a connection (With 60 second sleep cycles). Just like discussed here:
                            https://forum.pycom.io/topic/2878/fipy-lte-connection-working-with-telstra/18
                            and
                            https://forum.pycom.io/topic/2769/telstra-lte-cat-m-working-on-fipy-just/24

                          • When doing longer sleeps between messages (15minutes) I very rarely get a connection

                          • Today I have simply not been able to get a connection at all.

                          • Sometimes when I do connect, it will say message sent however it is never received by adafruit

                          • Last successful connection was last night around 9pm.

                          I just installed the new sequans firmware and having the same result.

                          I am using SIM cards that are given out by telstra for m2m.

                          My code:

                          import machine
                          from network import LTE
                          from pytrack import Pytrack
                          import os
                          import time
                          import socket
                          import pycom
                          from MQTT import MQTTClient
                          from L76GNSS import L76GNSS
                          
                          
                          def sub_cb(topic, msg):
                              print(msg)
                          
                          lte = LTE()
                          # lte.reset()
                          print("Line 15") #lots of prints for debugging
                          time.sleep(1)
                          lte.send_at_cmd('AT^RESET') #trying this to see if it helps on restart
                          print(lte.send_at_cmd('AT^RESET'))
                          print("Line 16")
                          time.sleep(1)
                          
                          lte.send_at_cmd('AT+CFUN=0')
                          print("Line 17")
                          time.sleep(1)
                          lte.send_at_cmd('AT!="clearscanconfig"')
                          print(lte.send_at_cmd('AT!="clearscanconfig"'))
                          print("Line 18")
                          time.sleep(1)
                          
                          lte.send_at_cmd('AT+CGDCONT=1,"IP","telstra.m2m"')
                          print(lte.send_at_cmd('AT+CGDCONT=1,"IP","telstra.m2m"'))
                          print("Line 19")
                          time.sleep(1)
                          
                          lte.send_at_cmd("AT!=\"RRC::addscanfreq band=28 dl-earfcn=9410\"")
                          print(lte.send_at_cmd("AT!=\"RRC::addscanfreq band=28 dl-earfcn=9410\""))
                          print("Line 20")
                          time.sleep(1)
                          
                          lte.send_at_cmd('AT+CFUN=1')
                          print(lte.send_at_cmd('AT+CFUN=1'))
                          print("Line 21")
                          time.sleep(1)
                          
                          print("Line 22")
                          time.sleep(1)
                          
                          while not lte.isattached():
                              print("Attaching...")
                              time.sleep(0.1)
                          print("Attached")
                          
                          lte.connect()
                          
                          while not lte.isconnected():
                              print("Connecting...")
                              time.sleep(0.1)
                          print("Connected!")
                          time.sleep(2)
                          def settimeout(duration): 
                             pass
                          print("line41")
                          def sub_cb(topic, msg): 
                             print(msg)
                          print("line44")
                          
                          client = MQTTClient("Demo","io.adafruit.com",user="Dylan", password="xxxx", port=1883)
                          print("Line 38")
                          client.set_callback(sub_cb)
                          print("Line 41")
                          client.connect()
                          print("Line 43")
                          time.sleep(1)
                          client.subscribe(topic="Dylan/feeds/test")
                          print("Line 46")
                          py = Pytrack()
                          battery = py.read_battery_voltage()
                          l77 = L76GNSS(py, timeout=30)
                          coord = l77.coordinates()
                          coord = str(coord) + str(',') + str(battery)
                          
                          print("Sending ON")
                          client.publish(topic="Dylan/feeds/test", msg=coord)
                          print("Line 51")
                          time.sleep(1)
                          print("Line 55")
                          client.check_msg()
                          
                          py.setup_sleep(60)
                          py.go_to_sleep()
                          
                          1 Reply Last reply Reply Quote 0
                          • P Offline
                            Prawnhead
                            last edited by

                            Anyone who's got working LTE with Optus or Vodafone wanna share your setup? Just looking for APN/channel configuration that would make testing other carriers quicker. Thanks, Chris.

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

                              @prawnhead I haven't been able to spend time on this (heavy workload on non rpycom related projects).

                              It does seem worrisome that no one seems to have it working.

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

                                @tealbrains So I finally found time to test the SEQUANS firmware.

                                I performed the firmware upgrade as per the instructions.

                                The upgrade performed as per instructions on a FiPy

                                And the result, working fine. - Success for me at least.

                                (sysname='FiPy', nodename='FiPy', release='1.17.3.b1', version='v1.8.6-849-83e2f7f on 2018-03-19', machine='FiPy with ESP32', lorawan='1.0.2', sigfox='1.0.1')

                                    lte.send_at_cmd('AT+CGDCONT=2,"IP","telstra.internet"')
                                    lte.send_at_cmd("AT!=\"RRC::addscanfreq band=28 dl-earfcn=9410\"")
                                    lte.send_at_cmd('AT!="RRC::addScanBand band=28"')
                                    lte.send_at_cmd('AT+CFUN=1')
                                
                                    for i in range(retries):
                                        if wdt:
                                            wdt.feed()
                                
                                        if (lte.isattached()):
                                              print("attached")
                                              lte.connect()
                                              break
                                        time.sleep(1)
                                

                                I will keep this running over the weekend, but looks good for me on at least one device.

                                The other devices are on the other side of the country in mechanical pumps so need to organise people to get me access to perform the upgrade ;-(

                                M T 2 Replies Last reply Reply Quote 0
                                • M Offline
                                  micksta @timh
                                  last edited by micksta

                                  @timh

                                  Hey lads, changed nothing here. Just thought I'd try and connect - Success here as well.

                                  (sysname='GPy', nodename='GPy', release='1.17.5.b6', version='v1.8.6-849-56d00234 on 2018-05-18', machine='GPy with ESP32')
                                  
                                  send_at_cmd_pretty('AT+CGDCONT=1,"IP","mdata.net.au"') # Aldi sim / "mdata.net.au" Aldi APN (aka Telstra network)
                                  time.sleep(1)
                                  send_at_cmd_pretty("AT!=\"RRC::addscanfreq band=28 dl-earfcn=9410\"")
                                  time.sleep(1)
                                  send_at_cmd_pretty('AT+CFUN=1') # enable modem & set to full functionality mode
                                  time.sleep(1)
                                  
                                  B T 2 Replies Last reply Reply Quote 0
                                  • B Offline
                                    blindman2k @micksta
                                    last edited by

                                    Same here. Everything was working one day, nothing working the next day, everything working again today.

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

                                      @micksta really. Thats interesting. Have Telstra rolled back some changes.
                                      I will ask the support engineer on Monday of they know of any changes

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

                                        @timh @micksta @Prawnhead @reclusio Yep, so I just tested it and it's working now.

                                        1. The firmware update was not the solution.
                                        2. Telstra has been tinkering with the network as we all know. This last change, which has fixed the problem, seems to have happened at the same time of the week, exactly one month later. It is worth noting that they have just done the following : https://www.telstra.com.au/aboutus/media/media-releases/Telstra-deploys-Australias-first-LTE-Broadcast-technology-to-support-sports-streaming . I wouldn't be surprised if it is connected to the issue.
                                        3. As for me, I will not be developing any products around the Gpy/Fipy until their modem is certified. I am supporting a couple of projects that are already using them. I am developing a comms board with a certified modem. Such a shame...wasted so much time and effort. I might still use these boards for quick tests but nothing more.

                                        I guess we can consider the case closed (fingers crossed) for now.

                                        T 2 Replies Last reply Reply Quote 1
                                        • T Offline
                                          timh @tealbrains
                                          last edited by

                                          @tealbrains Hmm not so sure.
                                          I am finding that if I don't have a terminal connected when using LTE, after a while I am getting socket errors.
                                          I don't get this when terminal is connected.

                                          Disconnecting for a short time, means mqtt packets don't get sent, reconnecting the terminal in time means they are sent back to back quickly (seems they are queued). Reconnecting after a longer period (minutes) I see socket errors.

                                          Where as the same code with a WIFI connection doesn't have the problem.

                                          I am struggling to understand why having a terminal connection makes any difference, but it is repeatable, across a GPY and FiPY.

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

                                            @timh To fix this I found I had to dupterm to a null device. This is odd and make development hard. This appears to have been introduced with the latest firmware. I don't know how my code could introduce such behaviour.

                                            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
                                            • 3
                                            • 1 / 3
                                            • First post
                                              Last post

                                            Pycom on Twitter

                                            Pycom