How to solve the firmware update failures
-
@jgmdavies
I have downloaded updated app and go to folder and rename file for wipy to appimg.bin
then i put it by ftp -
@livius Thanks!
-
@livius Thanks, I hadn't realised that is an option. For anyone else using Windows, you can probably find the .bin files at:
C:\Program Files (x86)\Pycom\Pycom Firmware Update\Upgrader
-
@Ralph
I have tried it
It can conect and send data to wipy
but it can not connect after rebot and say that update failed
It store image to Wipy because wipy can not start normally only in "self" mode and it revert temporarly to old version.After that problems i have tried to put the same appimg.bin self by ftp with same result. It store bin file and of course it dissapear
but wipy can not start - only in self mode -
I don't have a WiPy2 but if someone can upload the 4MB flash dump I can take a look to confirm the memory regions for the firmware images. I'd be surprised if they are any different from the LoPy though.
-
@Xykon said in How to solve the firmware update failures:
I don't have a WiPy2 but if someone can upload the 4MB flash dump I can take a look to confirm the memory regions for the firmware images. I'd be surprised if they are any different from the LoPy though.
Don't use the ftp method, if you look at Xykon post below you will have a solution. I tried everything and the only thing the worked was (on a windows OS):-
- Install python 2.7 and pyserial
- Run the tool to unlock the flash area via command prompt (See official instructions)
- Install the standalone update tool (next, next finish)
- Copy the appropriate bin file for your device from C:\Program Files (x86)\Pycom\Pycom Firmware update\Upgrader to the location of the tools folder e.g. C:\flash_debug_tool
- Open CMD in the directory you have the tools in e.g. "C:\flash_debug_tool" or cd to it and run the below
esptool.py --chip esp32 --port COM3 --baud 115200 write_flash 0x210000 lopy_0.9.1.b1_868.bin -fs 4MB -z
Change the com3 to your comport number
Change the lopy_0.9.1.b1_868.bin to your bin file name (lopy_0.9.1.b1_868.bin, lopy_0.9.1.b1_915.bin or wipy_0.9.1.b1.bin)this will install the latest firmware onto the default boot partition.
thank you
-
i try
esptool.py --chip esp32 --port COM3 --baud 115200 write_flash 0x210000 wipy_0.9.1.b1.bin -fs 4MB -z
and got error:C:\Python27\flash_debug_tool>esptool.py --chip esp32 --port COM3 --baud 115200 w
rite_flash 0x210000 wipy_0.9.1.b1.bin -fs 4MB -z
usage: esptool [-h] [--port PORT] [--baud BAUD]
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,
make_image,elf2image,read_mac,chip_id,flash_id,read_flash,verify_flash,erase_fla
sh,version}
...
esptool: error: argument operation: invalid choice: 'esp32' (choose from 'load_r
am', 'dump_mem', 'read_mem', 'write_mem', 'write_flash', 'run', 'image_info', 'm
ake_image', 'elf2image', 'read_mac', 'chip_id', 'flash_id', 'read_flash', 'verif
y_flash', 'erase_flash', 'version') -
error: argument operation: invalid choice: 'esp32'
Are you sure you copied the command correctly? Maybe try typing it manually on the command line?
-
i try type it but the same error
in previous post you have copy from cmd.exe window - without any modification - maybe i miss something? -
What happens when you run "esptool.py version" and "esptool.py --chip esp32". Can you please post exact output of both commands?
-
I see that i have python 2.7.11
with python 2.7.12 now all looks good :)Will be good to see in steeps that we need python 2.7.12
esptool.py v2.0-dev
Connecting...
Uploading stub...
Running stub...
Stub running...
Attaching SPI flash...
Configuring flash size...
Erasing flash...
Unc size 615696 comp size 362758 comp blocks 355
Wrote 362758 bytes at 0x00210000 in 32.6 seconds (89.1 kbit/s)...
Hash of data verified.Leaving...
-
Very nice to hear you got it working @livius
If anyone still has problems with firmware update failures: 0.9.2.b1 has just been released. This release fixes the bug where the flash memory gets write protected in some cases.
-
If anyone still has problems with firmware update failures: 0.9.2.b1 has just been released. This release fixes the bug where the flash memory gets write protected in some cases.
I just tried the new firmware updater for Windows, it goes through the questions about LoPy/country/COM port but then fails immediately. Trying to figure out why.
I manually flashed the firmware, partition table and bootloader so it's not a big problem but I'm curious why the updater doesn't work.
-
@Xykon Hi, we are having the same problem, although after multiple attempts, it did get past that immediate fail, but, then had a fail with an unknown error in pythonW. Not sure what is going at the moment.
-
Maybe because it is still wipy_0.9.1.b1.bin not wipy_0.9.2.b1.bin
i look into the folder and there is 1 not 2. -
The correct 0.9.2.b1 is in the 'firmware' folder. I tried copying into the main 'upgrader' folder, but, the Upgrader still fails. Thought it might be the version of python (I was running 3.5) but, 2.7.12 fails also.
-
Thanks for pointing this out. It must be an issue with the windows build of the updater, since the mac version works. We'll try to figure it out and get back to you guys as soon as we can.
-
i do manual update by:
esptool.py --chip esp32 --port COM8 --baud 115200 write_flash 0x210000 wipy_0.9.2.b1.bin -fs 4MB -z
esptool.py --chip esp32 --port COM8 --baud 115200 write_flash 0x204000 partitions.bin -fs 4MB -z
esptool.py --chip esp32 --port COM8 --baud 115200 write_flash 0x201000 bootloader.bin -fs 4MB -zi can connect by ftp and by telnet
by tenet i got:
import os
os.uname()
(sysname='WiPy', nodename='WiPy', release='0.9.2.b1', version='333b92c on 2016-10-26', machine='WiPy with ESP32')but when i start wipy2.0 with board2.0
i can not connect by pymark - i do not know why it not "listen" on UART
but i can do above operations again - and as i understand corectly it is done by UART? -
@livius There are some extra steps in the updater to preserve your flash memory (MAC address, files on /flash). Since you skipped these steps it's likely your boot.py was overwritten.
Upload a new boot.py file with the following code:
import os
from machine import UART
uart = UART(0, 115200)
os.dupterm(uart)P.S. Does anyone know where to find the formatting guide for this forum? I've seen people post source codes with a nice black background and syntax highlighting. How do you do that? Is there a help button somewhere for this?
-
import os
from machine import UART
uart = UART(0, 115200)
os.dupterm(uart)
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