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 Firmware Release 1.20.2.rc6

    Scheduled Pinned Locked Moved Announcements & News
    23 Posts 5 Posters 881 Views 5 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.
    • P Offline
      peterp
      last edited by Xykon

      A new firmware release 1.20.2.rc6 is now available. Even though this is marked as a release candidate, we think it's more stable than the previous release which is why it's available in the standard pybytes category.

      Changes:

      • IDF recompiled with v98 compiler
      • Ctrl-D works if pybytes is disabled (pycom.pybytes_on_boot(False))
      • updater.py supports additional pybytes options
      • Sigfox: finalizing certification RCZ1, 2, 4

      The firmware packages (.tar.gz) can be downloaded from the docs.

      The elf files can be found on github.

      robert-hhR D 3 Replies Last reply Reply Quote 2
      • robert-hhR Offline
        robert-hh @peterp
        last edited by robert-hh

        @peterp The fix about Ctrl-D working if Pybytes is disabled works only halfway. It does not work if Pybytes is not implemented in the firmware at all, as it is in the BASE variant. Then, the call config_get_pybytes_autostart() returns True and the flag cannot be cleared, since the method pycom.pybytes_on_boot() is not present in that variant. That cannot be solved by erasing the flash, since that sets this flag to 0xff, which is the True value. Of the many possible solutions, I changed pyexec.c such that the VARIANT flag is used as part if the decision making. See below:

        #if (VARIANT == PYBYTES)            
                    if (config_get_pybytes_autostart()) {
                        continue;
                    }
                    else {
                        vstr_clear(&line);
                        return PYEXEC_FORCED_EXIT;
                    }
        #else            
                    vstr_clear(&line);
                    return PYEXEC_FORCED_EXIT;
        #endif  
        
        X 2 Replies Last reply Reply Quote 2
        • X Offline
          Xykon administrators @robert-hh
          last edited by

          @robert-hh Thanks Robert, I'll update this on GitHub.

          Christian Ehlers

          1 Reply Last reply Reply Quote 1
          • X Offline
            Xykon administrators @robert-hh
            last edited by

            @robert-hh https://github.com/pycom/pycom-micropython-sigfox/commit/e264b4c24bf33daf50c766823bedbaa9bc931c51

            Christian Ehlers

            robert-hhR 1 Reply Last reply Reply Quote 1
            • robert-hhR Offline
              robert-hh @Xykon
              last edited by

              @Xykon Many thanks.

              1 Reply Last reply Reply Quote 0
              • D Offline
                dgerman @peterp
                last edited by

                @peterp After updating GPy WLAN no longer connects.
                I used max os Pycom Firmware Update.app 1.16.2 to update a GPy to 1.20.2.rc6. Ran nicely:

                writing gpy.bin
                Changed baud rate to 230400
                ...
                Wrote 4 KiB to config in 0.07 seconds
                Device ID: 807D3A947B7C 
                

                See additional info (separate since combined identified as spam!)

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

                  This post is deleted!
                  D 1 Reply Last reply Reply Quote 0
                  • D Offline
                    dgerman @dgerman
                    last edited by

                    This post is deleted!
                    1 Reply Last reply Reply Quote 0
                    • D Offline
                      dgerman @peterp
                      last edited by dgerman

                      @peterp After updating GPy WLAN no longer connects.
                      I used max os Pycom Firmware Update.app 1.16.2 to update a GPy to 1.20.2.rc6. Ran nicely:

                      writing gpy.bin
                      Changed baud rate to 230400
                      ...
                      Wrote 4 KiB to config in 0.07 seconds
                      Device ID: 807D3A947B7C 
                      

                      EXISTING (previous working) boot.py includes:

                      ...
                      pycom.heartbeat(False)
                      pycom.rgbled(0x005000)      # green
                      ...
                      from network import WLAN
                      wlan = WLAN(mode=WLAN.STA)
                      pycom.rgbled(0x201010)
                      wlan.ifconfig(config=('192.168.1.3', '255.255.255.0', '192.168.1.1', '192.168.1.1'))
                      wlan.scan()  
                      wlan.connect(ssid='Mynet', auth=(WLAN.WPA2, '5Cav')
                      pycom.rgbled(0x003000)   
                      ...
                      

                      (previous working) main.py includes:

                      pycom.rgbled(0x000060)      # blue in main
                      ...
                      from machine import RTC
                      rtc=RTC()
                      
                      for i in range (1,8):
                          pycom.rgbled(0x302020)      #   pink going to network
                          rtc.ntp_sync("pool.ntp.org")
                          pycom.rgbled(0x301010)      #   pink back from  network but did it work?
                      ...
                          if time.localtime()[0] > 2019:
                              break
                          time.sleep(1)
                      pycom.rgbled(0x000060)      #   blue back to main
                      ...
                      import usyslog
                      s = usyslog.UDPClient(ip='dalom', facility=usyslog.F_LOCAL5)
                      s.alert('++ main.py: reset:' + str(machine.reset_cause()))
                      ...
                      

                      LED indicates that boot is progressing and main gets time from NTP (since it does not loop for 8 seconds) although if it is not connected to the WLAN that does not make any sense. No syslog entries are recorded at the syslog server.

                      I can no longer connect via ftp or telnet or ping (since it is not connected to the WLAN).

                      I am able to run the update which installs the firmware. (edited since I had some difficulty creating the post)

                      But although GPy seems to broadcast its SSID briefly, the Mac book pro which connected to it as an access point previously no longer offers to connect to it. After 60 seconds it no longer appears in the list of networks shown by apple's airport utility (I expect that the first broadcast, retained in cache expired)

                      How do I proceed?

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

                        What was the previous MicroPython version ?

                        Have you erased the flash memory before installing the firmware 1.20.2.rc6 ?:

                        $ pycom-fwtool-cli -p /dev/ttyACM0 erase_all
                        

                        My "MicroPython Samples". My "MicroPython Firmwares" with many options (double precision, ulab, etc).

                        D 1 Reply Last reply Reply Quote 0
                        • D Offline
                          dgerman @rcolistete
                          last edited by dgerman

                          @rcolistete from my notes (as I cannot access system) Is this what you are looking for?

                          os.uname():
                          1/07/20 (sysname='GPy', nodename='GPy', release='1.18.1.r2', version='v1.8.6-849-f652205 on 2018-10-18', machine='GPy with ESP32')
                          
                          

                          I did NOT know I was supposed to erase flash first.
                          Thanks for including the command.

                          I extracted pycom-fwtool-cli from the Pycom Firmware Update.app and ran

                          pycom-fwtool-cli list 
                          pycom-fwtool-cli -p /dev/cu.usbmodemPy0d3d0c1 erase_all 
                           Running in PIC mode
                           Erasing the board can take up to 40 seconds.
                            Board erased successfully in 12.51 seconds
                          

                          Then ran Pycom Firmware Update.app which ran as previously.

                          The GPy now blinks heartbeat and broadcasts SSID gpy-wlan-7b7c as expected at least a few times. But the Mac book pro that previously connected to it as an access point does not offer to connect to it. After 60 seconds it no longer appears in the list of networks shown by apple's airport utility (I expect that the first(few?) broadcast, retained in cache expired)

                          Just to be redundant(?) I did the erase_all again and ran the update again but still no joy.

                          I await addition assistance, Thank you

                          1 Reply Last reply Reply Quote 0
                          • P Offline
                            peterp @dgerman
                            last edited by

                            @dgerman said in New Firmware Release 1.20.2.rc6:

                            wlan = WLAN(mode=WLAN.STA)

                            For my understanding, do you want to put the GPy into STA mode or in AP mode? If you want AP mode, can you then try without your boot.py and main.py?

                            D 1 Reply Last reply Reply Quote 0
                            • D Offline
                              dgerman @peterp
                              last edited by

                              @peterp Thank you for your response.
                              After erase_all and flash I expect GPy to be blinking heartbeat and to be in Acces Point mode broadcasting SSID of gpy-wlan-xxxx (where xxxx are low order digits from MAC) with a password of www.pycom.io with a telnet server and ftp server running at 192.168.4.1 .
                              This is what I expect now but it seems to broadcast SSID only once (or a few times) ( I am using Mac Boot Pro , Catalina 10.15.4 which prior to flash 1.20.2.rc6 offered to connect and the airport utility continuously reported it's RSSI.)

                              P 1 Reply Last reply Reply Quote 0
                              • P Offline
                                peterp @dgerman
                                last edited by

                                @dgerman Understood. And are you able to test that AP behaviour after temporarily removing your boot.py and main.py?

                                D 1 Reply Last reply Reply Quote -1
                                • D Offline
                                  dgerman @peterp
                                  last edited by dgerman

                                  @peterp After erase_all and flash my boot.py and main.py are no longer there as I can tell by the heartbeat.
                                  I cannot connect to Access Point to put them there.
                                  Using

                                  sudo iwlist wlan0 scan 
                                  

                                  on a Raspberry PI Zero W reports

                                            Cell 06 - Address: 80:7D:3A:94:7B:7D
                                                      Channel:6
                                                      Frequency:2.437 GHz (Channel 6)
                                                      Quality=70/70  Signal level=-40 dBm
                                                      Encryption key:on
                                                      ESSID:"gpy-wlan-7b7c"
                                                      Bit Rates:5.5 Mb/s; 11 Mb/s; 1 Mb/s; 2 Mb/s; 6 Mb/s
                                                                12 Mb/s; 24 Mb/s; 48 Mb/s
                                                      Bit Rates:54 Mb/s; 9 Mb/s; 18 Mb/s; 36 Mb/s
                                                      Mode:Master
                                                      Extra:tsf=0000000000000000
                                                      Extra: Last beacon: 30ms ago
                                                      IE: Unknown: 000D6770792D776C616E2D37623763
                                                      IE: Unknown: 01088B9682840C183060
                                                      IE: Unknown: 32046C122448
                                                      IE: Unknown: 030106
                                                      IE: Unknown: 0706434E00010D14
                                                      IE: IEEE 802.11i/WPA2 Version 1
                                                          Group Cipher : TKIP
                                                          Pairwise Ciphers (2) : CCMP TKIP
                                                          Authentication Suites (1) : PSK
                                                      IE: Unknown: 2D1A6E1100FF00000000000000000000000100000000000000000000
                                                      IE: Unknown: 3D1606050000000000000000000000000000000000000000
                                                      IE: Unknown: DD180050F2020101040003A4000027A4000042435E0062322F00
                                  

                                  I notice the only difference between multiple reports is

                                  • Extra: Last beacon: 30ms ago
                                  • Extra: Last beacon: 2070ms ago
                                  • Extra: Last beacon: 4260ms ago

                                  Which seems to confirm my suspicion that GPy is only broadcasting SSID once.
                                  I don't know how to interpret anything else in the report.

                                  If I download and flash a previous version of the firmware for GPy where should I get it? I am using a Mac so how do I get Pycom Firmware Update.app to flash a specific version?

                                  P 1 Reply Last reply Reply Quote 0
                                  • P Offline
                                    peterp @dgerman
                                    last edited by

                                    @dgerman said in New Firmware Release 1.20.2.rc6:

                                    @peterp After erase_all and flash my boot.py and main.py are no longer there

                                    Ugh, yeah, of course. Sorry, wasn't thinking along properly here. Mhm ... it's weird ... I'm thinking ...

                                    I cannot connect to Access Point to put them there.

                                    just for completeness, you know you can work with pymakr?

                                    If I download and flash a previous version of the firmware for GPy where should I get it? I am using a Mac so how do I get Pycom Firmware Update.app to flash a specific version?

                                    you should be able to select previous version also in the application ... if you want to download them manually, see here https://software.pycom.io/downloads/GPy.html

                                    D 1 Reply Last reply Reply Quote 0
                                    • D Offline
                                      dgerman @peterp
                                      last edited by

                                      @peterp Thanks. On Mac OS with Pycom Firmware Update.app include develop versions I choose
                                      GPy-1.20.2.rc2 ++SUCCESS++
                                      GPy-1.20.2.rc3 --FAILS only transmits SSID once---
                                      GPy-1.20.2.rc2 --FAILS !-!
                                      GPy-1.20.2.rc2 with erase file system ++SUCCESS++

                                      Did not see rc4 or rc5.

                                      D 1 Reply Last reply Reply Quote 1
                                      • D Offline
                                        dgerman @dgerman
                                        last edited by

                                        @peterp Should I create an issue at GitHub?

                                        robert-hhR 1 Reply Last reply Reply Quote 1
                                        • robert-hhR Offline
                                          robert-hh @dgerman
                                          last edited by

                                          @dgerman Can you show the full log you see in a console window after pushing reset?

                                          D 1 Reply Last reply Reply Quote 0
                                          • D Offline
                                            dgerman @robert-hh
                                            last edited by dgerman

                                            @robert-hh Sorry I don't understand what you are asking for.
                                            Summary:
                                            GPy 1.18.1.r2 (as received)
                                            boot.py set LED green, pink, connects to wlan as STAtion and finally green.
                                            main.py updates time from ntp sets LED blue then sends syslog message.
                                            After update to 1.20.2.rc6 LED blinks but no syslog message is received. GPy does not respond to ping, telnet or ftp.
                                            After erase_all and update, LED shows heartbeat (since boot.py and main.py were initialized as empty). GPy transmits SSID as AccessPoint one time only and macBookPro can no longer connect.

                                            robert-hhR 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