New firmware release 1.10.1.b1
-
NEW UPDATER TOOL PATCH: Some users are experiencing Guru meditation errors on the 4MByte of RAM devices with this update. An intermediate solution for this while we release a new version of the updater is to patch the current one.
Please follow these instructions:
-
Find the location where the Pycom Firmware Update application is installed. Then enter the directory (on Mac OS you need to right click and select "Show Package Contents").
-
Within the files of the app, locate the one named updater.py.
-
Inside that file find the following 3 lines which appear twice:
args.flash_size = '4MB' args.flash_mode = 'dio' args.flash_freq = '40m' -
Change the lines to read:
args.flash_size = 'detect' args.flash_mode = 'dio' args.flash_freq = '80m'
A new firmware release is out. The version is v1.10.1.b1. This release brings full external RAM support for the newer modules. With this the MicroPython heap is increased to 3 MBytes (1 Mbyte is reserved for internal use).
The Github sources have been updated as well with the changes from this release.
Here's the full change log:
- esp32/frozen: Solve bug of calling non-existing .connect method in AWS libs.
- esp32: Improve WiFi connect policy. Increase stack of some IDF tasks.
- esp32: Store the entire LoRa MAC params structure dring NVRAM save.
- esp32: Allocate the MicroPython stack size dinamically. Use a larger stack for the devices with pSRAM.
- esp32/mods/modwlan.c: Fix DNS bug and WLAN disconnect instability.
- esp32: Improve HW I2C deinit routine.
- esp32: Solve issue with Sigfox modulation due to the new compiler options.
- esp32: Enable pull-ups for output pins. Improve sendbreak timing.
- esp32: Set the value of output pins before de-assigning them.
- esp32: Correct pin deinit conditions and sequence.
- esp32: Deassign pins when peripherals are disabled. Disabled pull-ups as well.
- esp32: Allow the WiPy to use the 2 SPI devices. Add byte order support.
- esp32: Make the file system 4MBytes for devices with 8Mbytes of flash.
- esp32: Increase flash frequency to 80MHz. Keep pSRAM at 40MHz.
- esp32 : Fix UART initialisation routine.
- esp32: Fix machine.reset()
- esp32: Update bootloader. Include code to init GPIOs and VDDSDIO voltage.
As usual this new firmware can be applied using our firmware update tool: https://pycom.io/downloads/
Cheers,
Daniel -
-
Hi,
My lopy is rebooting itself when running this firmware and the Lorawan Nanogateway.
Guru Meditation Error of type LoadProhibited occurred on core 0. Exception was unhandled. Register dump: PC : 0x400fb5d0 PS : 0x00060e30 A0 : 0x800dd2c8 A1 : 0x3ffda860 A2 : 0x00000001 A3 : 0x00000001 A4 : 0x00000000 A5 : 0x00000001 A6 : 0x00000000 A7 : 0x00060023 A8 : 0x800fa3e6 A9 : 0x3fff0580 A10 : 0x00000001 A11 : 0x00000001 A12 : 0x3ffe7080 A13 : 0x3ffe7080 A14 : 0x3fff06f0 A15 : 0x3fff0650 SAR : 0x00000020 EXCCAUSE: 0x0000001c EXCVADDR: 0x00000001 LBEG : 0x40098624 LEND : 0x4009862f LCOUNT : 0x00000000 Backtrace: 0x400fb5d0:0x3ffda860 0x400dd2c5:0x3ffda880 0x400dd32f:0x3ffda8a0 0x400dd7bd:0x3ffda8d0 0x400dd9d7:0x3ffda8f0 0x400dcb69:0x3ffda930Regards,
Javier -
-
@shridattdudhat Hi, thanks for the info about safe boot! But the problem is not that I can't use the Lopy, the problem is that from time to time, the Lopy reboots itselft (and keeps working fine after that). Sorry about the little information in the other post.
-
Hi,
I have trouble with my LoPy's. Since I made the firmware update I can't receive any LoRa packets. I also tried the LoRa Raw Nano Gateway from your tutorials (just copy&paste) but even this won't work. It seems that something went wrong on LoRa :(
Regards,
Pascal -
@pjoerke said in New firmware release 1.10.1.b1:
I have trouble with my LoPy's. Since I made the firmware update I can't receive any LoRa packets. I also tried the LoRa Raw Nano Gateway from your tutorials (just copy&paste) but even this won't work. It seems that something went wrong on LoRa :(
Hello Pascal, can you please be more specific. I've tested LoPy 2 LoPy RAW connectivity and using one LoPy as a NanoGateway and another as a Node. Both tests have been successful with the latest firmware.
-
I just tested the LoPy to LoPy raw lora ping pong example and its working properly on the latest firmware
-
@jp00 I've been running the lorawan-nano-gateway for 30 minutes now without seeing any crash. Can you please erase the fs with
import os; os.mkfs('/flash')to make sure this isn't a flashing problem and then check that you have the latest nano-gateway code?Also can you please confirm which frequency band you are using?
-
@jp00 Hi, I was also getting a similar error....
Guru Meditation Error of type LoadProhibited occurred on core 0. Exception was unhandled.
Register dump:
PC : 0x400fb5d0 PS : 0x00060e30 A0 : 0x800dd2c8 A1 : 0x3ffda860
A2 : 0x00000001 A3 : 0x00000001 A4 : 0x00000000 A5 : 0x00000001
A6 : 0x00000000 A7 : 0x00060023 A8 : 0x800fa3e6 A9 : 0x3fff0580
A10 : 0x00000001 A11 : 0x00000001 A12 : 0x3ffe7080 A13 : 0x3ffe7080
A14 : 0x3fff06f0 A15 : 0x3fff0650 SAR : 0x00000020 EXCCAUSE: 0x0000001c
EXCVADDR: 0x00000001 LBEG : 0x40098624 LEND : 0x4009862f LCOUNT : 0x00000000Backtrace: 0x400fb5d0:0x3ffda860 0x400dd2c5:0x3ffda880 0x400dd32f:0x3ffda8a0 0x400dd7bd:0x3ffda8d0 0x400dd9d7:0x3ffda8f0 0x400dcb69:0x3ffda930
I placed lopy in safe mode then I connected it via IP. I saw some unwanted files in flash folder of lopy. i deleted all unnecessary files and folder. and all set, my lopy again starts working as a charm :)
-
@xykon I'm also trying to reproduce the problem and I can't do it anymore. Maybe it was related to using the REPL while running the Gateway, I don't know. Thanks, I will let you know If i can reproduce it.
-
Hello,
After i upgraded the firmware my lopy seems bricked. The led is red and i can't do anything with it. I tried to erase the flash with the esptool like here https://forum.pycom.io/topic/1343/solved-lopy-bricked-red-led, but i get "A fatal error occurred: Failed to connect to ESP32: Timed out waiting for packet header" I run it with: python esptool.py --port COM3 --chip esp32 erase_flash
In the console i get:
rst:0x1 (POWERON_RESET),boot:0x13 (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:0x3fff9028,len:8
load:0x3fff9030,len:1076
load:0x4009fa00,len:0
ho 12 tail 0 room 4
load:0x4009fa00,len:15344
entry 0x400a070cI've also tried to connect G28 to 3v3 to do load the previous/factory firmware, but it doesn't do anything. I always get the red led, never the orange one. I've done this firmware 'reset' many times and it worked fine.
I've had the lopy for about 8 months. I've upgraded it constantly and played with it a lot. Never had any problems until now.
Any advice?
Thank you
-
@tudro Please make sure you have a wire connected between G23 and GND and reset the board before trying the erase. You should see a message "Waiting for download" on the serial terminal. Also make sure that all serial terminal programs & Pymakr plugins are disconnected when running esptool or the firmware update tool.
-
building from fresh pulled git raises errors. There is a param that shall be specified?
$ make BOARD=LOPY TARGET=boot Use make V=1 or set BUILD_VERBOSE in your environment to increase build verbosity. mkdir -p build/LOPY_868/release/bootloader/ CC bootloader/bootloader.c xtensa-esp32-elf-gcc.exe: error: unrecognized command line option '-mfix-esp32-psram-cache-issue' make: *** [../py/mkrules.mk:47: build/LOPY_868/release/bootloader/bootloader.o] Error 1 -
@colateral Please download the new xtensa compiler for your OS.
The "esp32" port requires an xtensa gcc compiler, which can be downloaded from the Espressif website:
for 64-bit Linux::
https://dl.espressif.com/dl/xtensa-esp32-elf-linux64-1.22.0-73-ge28a011-5.2.0.tar.gz
for 32-bit Linux::
https://dl.espressif.com/dl/xtensa-esp32-elf-linux32-1.22.0-73-ge28a011-5.2.0.tar.gz
for Mac OS:
https://dl.espressif.com/dl/xtensa-esp32-elf-osx-1.22.0-73-ge28a011-5.2.0.tar.gz
-
@xykon thanks. we are using msys2. This has to be installed in msys to work?
-
@colateral Please use the following within msys2 to update the toolchain:
# Automatically download precompiled toolchain, unpack at /opt/xtensa-esp32-elf/ TOOLCHAIN_ZIP=xtensa-esp32-elf-win32-1.22.0-73-ge28a011-5.2.0.zip echo "Downloading precompiled toolchain ${TOOLCHAIN_ZIP}..." cd ~ curl -LO --retry 10 http://dl.espressif.com/dl/${TOOLCHAIN_ZIP} cd /opt rm -rf /opt/xtensa-esp32-elf # for upgrades unzip ~/${TOOLCHAIN_ZIP} rm ~/${TOOLCHAIN_ZIP} -
-
@xykon Thanks. It was working. The mpy-cross was built and also the binary .. but there are issues on serial writing.
COM7 is ON and 'waiting for download'but
$ make V=1 BOARD=LOPY LORA_BAND=USE_BAND_868 flash ESPPORT=COM7 python ../py/makeversionhdr.py build/LOPY_868/release/genhdr/mpversion.h Entering flash mode python tools/pypic.py --port COM7 --enter Traceback (most recent call last): File "tools/pypic.py", line 185, in <module> sys.exit(main(sys.argv[1:])) File "tools/pypic.py", line 173, in main pic = Pypic(args.port) File "tools/pypic.py", line 77, in __init__ self.serial = serial.Serial(port, baudrate=115200, bytesize=serial.FIVEBITS, timeout=0.25) File "D:/ProgramFiles/msys32/mingw32/lib/python2.7/site-packages/serial/serialwin32.py", line 31, in __init__ super(Serial, self).__init__(*args, **kwargs) File "D:/ProgramFiles/msys32/mingw32/lib/python2.7/site-packages/serial/serialutil.py", line 240, in __init__ self.open() File "D:/ProgramFiles/msys32/mingw32/lib/python2.7/site-packages/serial/serialwin32.py", line 78, in open self._reconfigure_port() File "D:/ProgramFiles/msys32/mingw32/lib/python2.7/site-packages/serial/serialwin32.py", line 222, in _reconfigure_port 'Original message: {!r}'.format(ctypes.WinError())) serial.serialutil.SerialException: Cannot configure port, something went wrong. Original message: WindowsError(87, 'The parameter is incorrect.') make: *** [application.mk:398: flash] Error 1With pycom firmware update and updater.py (changed according with Daniel above guidelines) ... it is working.
>>> import gc >>> uos.uname() (sysname='LoPy', nodename='LoPy', release='1.10.1.b1', version='v1.8.6-839-g536c958c on 2017-11-15', machine='LoPy with ESP32', lorawan='1.0.0') >>> >>> >>> >>> import gc >>> gc.mem_free() 3070064 -
@xykon Thank you for the quick answer and sorry for the late reply (2 small kids :) ). You were right, i didn't have G23 and GND connected. I was able to reset the flash and make the lopy work again. Thank you very much
-
@colateral This seems to be due to a new tool we added that puts the ESP32 into firmware update mode if a Pytrack or Pysense is being used. It seems this tool doesn't work on Windows...
Please edit
application.mkin the esp32 directory, search forflash:and comment the 4 lines as shown below:flash: $(APP_BIN) $(BOOT_BIN) # $(ECHO) "Entering flash mode" # $(Q) $(ENTER_FLASHING_MODE) $(ECHO) "Flashing project" $(Q) $(ESPTOOLPY_WRITE_FLASH) $(ESPTOOL_ALL_FLASH_ARGS) # $(ECHO) "Exiting flash mode" # $(Q) $(EXIT_FLASHING_MODE)This will prevent the tool from running until we can fix it.
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