New Firmware Release 1.20.2.rc6
-
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.pysupports 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.
-
@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 -
@robert-hh Thanks Robert, I'll update this on GitHub.
-
-
@Xykon Many thanks.
-
@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: 807D3A947B7CSee additional info (separate since combined identified as spam!)
-
This post is deleted! -
This post is deleted! -
@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: 807D3A947B7CEXISTING (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?
-
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 -
@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 secondsThen 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
-
@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?
-
@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.) -
-
@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.
Usingsudo iwlist wlan0 scanon 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: DD180050F2020101040003A4000027A4000042435E0062322F00I 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?
-
@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
-
@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.
-
@peterp Should I create an issue at GitHub?
-
@dgerman Can you show the full log you see in a console window after pushing reset?
-
@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.
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