Dear @t0000899 and all others here,
@t0000899 said in Firmware Release v1.20.1:
Sometimes during FTP transfer there is an unhandled exception and flash memory is formatted.
Memory dump at 0x4020234c: bad00bad bad00bad bad00bad
Guru Meditation Error: Core 0 panic'ed (IllegalInstruction). Exception was unhandled.
@andreas said in Firmware Release v1.20.1:
We can confirm this after upgrading to 1.20.1 on FiPy and LoPy4 devices, with or without VARIANT=PYBYTES. We are also spuriously getting these core panics, see also https://community.hiveeyes.org/search?q=bad00bad bad00bad bad00bad.
Guru Meditation Error: Core 1 panic'ed (Cache disabled but cached memory region accessed)
Guru Meditation Error: Core 1 panic'ed (IllegalInstruction). Exception was unhandled.
Memory dump at 0x4020f958: bad00bad bad00bad bad00bad
We have been working on mitigating these issues, so if you feel lucky, you might want to try one of our custom builds published to . More background about this is available through .
If we are lucky together, this will improve the stability significantly. If you will be still receiving the core dumps, I will be happy if you would share its content with us. Please just don't paste it into the comment itself but put it into a file which you will be able to upload by dragging it into the text area.
Please be aware that when upgrading from a lower firmware version to the current 1.20.1.r1 development release these builds are based upon, you will have to erase your device completely before flashing in order to keep things straight as outlined within this topic already. Hint: Use a command like pycom-fwtool-cli --port /dev/ttyUSB0 erase_all, see also .
Please also be aware that this procedure will also erase the LoRa MAC stored on the device. @robert-hh thankfully outlined the procedure to restore it appropriately:
If you still know the value the LoraMac had before, then you can follow the procedure explained at https://forum.pycom.io/topic/1272/lora-mac-ffffffffffffffff/21.
If you do not know it, you will have to use the Pycom updater to restore it:
First, use the Pycom updater (GUI version) to install a recent image (like pybytes 1.20.1) from the Internet. You do not have to use it, the installation process itself already restores both the LoRa MAC and the Sigfox ID.
Then, use the Pycom updater to flash the custom image. Do not erase the flash in between.
As it turned out to gain more robustness for others already [4,5], we will be happy to learn if this happens to you as well.
With kind regards,
P.S.: For all people who want to go with Pybytes, we just published builds using VARIANT=PYBYTES at . When going that way, you should probably save the pybytes_config.json before invoking the erase_all procedure and restore it to the device afterwards.
P.P.S.: All these builds use the LittleFS filesystem to prevent filesystem corruption which works for us very well.
@protean Pymakr is indeed using the zlib.decompress() micropython function for this feature. Normal upload also still works of course, but this way is faster for large files. Let me give you some pointers on how to code it:
The zlib function on the micropython side is documented here. Pymakr is compressing the files before uploading (here using this python file), writing the compressed file to the board with os.write() like always, and then decompressing them right after that (here). It'll definitely make uploading bigger files faster. Just realise that for files under 4k, it's actually slower because the overhead of compressing/decompressing is bigger than the savings of compressing the file.
Great news @Paul-Thornton! Congratulations
I looked at the lora-alliance website put couldn't find the certification reports -- have you made them available? Obviously we would like to use your certification but need:
the certification reports
the git hashes or release number of the code which was actually certified
Also are you planning on getting AU-915 certified, as it's a supported region in your software?
The fixes to the stack and radio drivers that you mention sound great! I had an issue with the LBT in the radio (lack of filtering so that all channels could look busy) and am interested if that was addressed.
Looking forward to the certificates and associated code!
The issue is that socket.connect() and SSL handshake will not timeout also in case the socket timeout is set and hang the application forever.
@rskoniec said in New Firmware release v1.18.1.r1:
@mfa2214 xPy module f/w and GPy/Fipy modem f/w are separate, so GPy/Fipy module f/w doesn't contain modem f/w.
Here http://stiny.webd.pl/PYCOM/ on my VPS you have collection of CATM1/NB1 *.dup files.
Many thanks @rskoniec for sharing the files :)
We could change the default sort order but I'm not sure this would affect existing users. I admit it throws me off too if I'm on the forum but not logged into my account. I'll see if our system admin can do some internal tests.
Hi @mongkol, so you have this error every time you try to update? Or just once in a while? I would suspect the PC USB port to be the problem, you could:
change the USB-microUSB cable
use the PC direct USB port, not thru a USB hub;
remove other USB peripherals from PC
The firmware update packages are sent over DFU protocol, which runs over USB bulk transfer channel, it might happen that the CRC of a package was wrong (or delayed).