ESP8266 Binaries  [SOLVED]

Discussion about various user interfaces such as web interface, displays and apps
Post Reply
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

ESP8266 Binaries

Post by Scrappyjoe »

Hello,

I am running a really old version of the ESP8266 web UI (see screenshot attached). When updating my Zombieverter from 2.17 to 2.20 I am losing all spot values, so I thought updating the ESP8266 UI might help.

I went to the GitHub README for instructions (see https://github.com/jsphuebner/esp8266-web-interface) and it says that I can use pre compiled software from the openinverter forum (see https://github.com/jsphuebner/esp8266-w ... e#firmware), but, when I searched here, I cannot find any stickies or posts that host binaries.

Does anybody have a recent working build they would be willing to share with me? It will save me having to set up Arduino etc etc.
Attachments
Screenshot 2025-01-27 at 15.49.57.png
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

For what it's worth, the parameters section renders on ZombieVerter v 2.17, but does not render on ZombieVerter 2.20 on my (old) web interface.
m.art.y
Posts: 638
Joined: Sat Jun 06, 2020 6:54 pm
Location: UK/EU
Has thanked: 35 times
Been thanked: 32 times

Re: ESP8266 Binaries

Post by m.art.y »

Scrappyjoe wrote: Mon Jan 27, 2025 3:06 pm For what it's worth, the parameters section renders on ZombieVerter v 2.17, but does not render on ZombieVerter 2.20 on my (old) web interface.
Could it be that the update simply didn't go through? Can you try again? I loaded 2.20 while using this old web interface and it worked fine.
User avatar
johu
Site Admin
Posts: 6618
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 341 times
Been thanked: 1484 times
Contact:

Re: ESP8266 Binaries

Post by johu »

I don't know of any prebuilt binaries, so I guess that dead end should be deleted from the readme.

Easiest way to upgrade is to install platform IO, which takes care of compiling and flashing.

As marty says, the old web interface should run just fine with recent stm32 firmwares, that must be caused by a failed upgrade or something
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Thanks marty, that’s good to know. I downgraded and upgraded several times to avail, but I am also using quite an old 12v battery so I’ll switch to a bench power supply and see if that helps.

Thanks for the platform IO recommendation johu, I’ll give it a go.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Out of interest, johu, is there any reason we cannot use GitHub actions to pre build binaries? If it’s a question of writing the action I can give it a go.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Upgraded while on bench power, problem persists. Looking at developer tools in chrome it's all 200 codes except for a 404 for subscription.js, but I think that was there before anyway. I can't tell if the problem is with the web ui or with the underlying zombie. I'll try upgrade the UI first, just to eliminate it.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Ok, having taken a few wrong turns, this is how far I have gotten.

Code: Select all

# Install platformio-core (NOT the VSCode extension!)
curl -fsSL -o get-platformio.py https://raw.githubusercontent.com/platformio/platformio-core-installer/master/get-platformio.py
python3 get-platformio.py

# verify install
pio --version

# clone the repo
git clone git@github.com:jsphuebner/esp8266-web-interface.git
cd esp8266-web-interface

# build 
pio run

# upload
# no error, but no new interface
bash upload.sh 192.168.4.1

# no error, but no new interface 
bash upload.sh 192.168.4.1 .pio/build/release/firmware.bin

# gives FileNotFoundSending errors for each file
bash upload.sh 192.168.4.1/update
bash upload.sh 192.168.4.1/edit


I have completed all these steps successfully, but to no avail.

My thinking is that I am not uploading to the right endpoint. I know the ip address is good, because I can visit the website. Perhaps it's the subpath. Any pointers on what argument I should pass to upload.sh?

I also tried uploading firmware.bin via the UI.

firmware.bin uploads successfully, but I think it is flashing it to the zombie because the UI does not change.
User avatar
snelly
Posts: 73
Joined: Sun Dec 26, 2021 11:54 am
Has thanked: 3 times
Been thanked: 10 times

Re: ESP8266 Binaries

Post by snelly »

Hi this video mite help

Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Thanks snelly, I'll give it a look. At first blush it doesn't look to be the same issue because on versions below 2.17 I can see the parameters, and above that I can't, but, then again I am not sure it being able to see the parameters equates with actual comms with the stm32. That was the main reason I wanted to update the web ui - so I can get a visual signal when there are no comms.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Just to update on this. I dropped down to Zombie version 2.17 and managed to progress to the point where my pedal, ignition and start switches and recharge sequence are all working. I am struggling to get the inverter to come up, so I thought I'd attempt to upgrade once again to 2.20.

Same problem, no spot parameters showing.

BUT BUT BUT I still had my gauges (http://192.168.4.1/gauges.html) window open. And those work fine. They respond to me turning the ignition on etc.

What I mean is, on 2.20, the wifi module is clearly communicating with the zombie because I can see my voltages etc on the gauges, it's just the parameters and spot values that don't seem to load.
User avatar
johu
Site Admin
Posts: 6618
Joined: Thu Nov 08, 2018 10:52 pm
Location: Kassel/Germany
Has thanked: 341 times
Been thanked: 1484 times
Contact:

Re: ESP8266 Binaries

Post by johu »

Hmm, what comes up when you call http://192.168.4.1/cmd?cmd=json ?
Support R/D and forum on Patreon: https://patreon.com/openinverter - Subscribe on odysee: https://odysee.com/@openinverter:9
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

I get this json
Attachments
cmd.json
(28.65 KiB) Downloaded 414 times
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

Ok, I have managed to update my web interface. Managed it mere seconds before I got pulled away for kids bedtime, so will have to post my solution later.

Now that I have an answer to this topic I will close it and open another topic about the comms issue with Zombieverter 2.20a.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries  [SOLVED]

Post by Scrappyjoe »

As promised, here is how I updated my ESP8266. I hope this can serve as a bit of a help to anyone who might be in a similar boat.

Prerequisites:

1. I have a pre-flashed ESP8266 with johu's esp8266-web-interface, but I want to update it to the latest version.
2. I am able to access the web interface of the old esp8266 at 192.168.4.1
3. The new version I am installing is git commit 4594becbddcd36f3cf293ef232b31cd7221bc9df . This will probably work with other commits - it did when I was experimenting, but it is verified by me to work with this commit.

Actions I took to update:

1. Set up platformio

Code: Select all

# Install platformio-core (NOT the VSCode extension!)
curl -fsSL -o get-platformio.py https://raw.githubusercontent.com/platformio/platformio-core-installer/master/get-platformio.py
python3 get-platformio.py

# verify install
pio --version

# clone the repo and change into the working directory. 
git clone git@github.com:jsphuebner/esp8266-web-interface.git
cd esp8266-web-interface
2. Alter the file platformio.ini. Replace these lines

Code: Select all

upload_flags =
  --after
  no_reset_stub
with this line

Code: Select all

upload_port = 192.168.4.1
This allows you to upload the build directly to the board via http.

3. Delete all the old files on the ESP8266 in case it's too full

Go to http://192.168.4.1/list. You should get a json response like the following (file names could be different):

Code: Select all

[{"type":"file","name":"log.js"},{"type":"file","name":"logo.png"},{"type":"file","name":"syncofs.html"},{"type":"file","name":"modal.js"}]

For each of the filenames, delete them one by one via curl.

Code: Select all

curl -X "DELETE" "http://192.168.4.1/edit?f=/index.html"
After this, http://192.168.4.1/list should be empty.

4. Build and upload the firmware and the spiffs filesystem

Code: Select all

pio run --target upload
# You should see upload progress and success after this

pio run --target uploadfs
# You should see upload progress and success after this
5. Upload the new website files to the filesystem

Create a bash script upload_webfiles.sh

Code: Select all

#!/bin/bash

IP=192.168.4.1

for file in *
do
  echo "$file"
  curl -F 'data=@'$file http://$IP/edit
done
Navigate into the data directory and execute it.

Caveats / Mysteries

1. I thought spiffs.bin contained the web files, so I think the uploads command and the manual files upload are redundant, but this is how I got it to work.
Scrappyjoe
Posts: 156
Joined: Fri Feb 25, 2022 3:16 pm
Has thanked: 40 times
Been thanked: 22 times

Re: ESP8266 Binaries

Post by Scrappyjoe »

I bit more info. I managed to totally lose connectivity to the Olimex and had to reflash it via UART.

The guide from the GitHub repo were good -

https://github.com/jsphuebner/esp8266-w ... file#wired

If you are looking for a pinout, the wiki has a good diagram -

https://openinverter.org/wiki/Olimex_MOD-WIFI-ESP8266

You can see another one here -

https://www.olimex.com/Products/IoT/_re ... rmware.pdf

The pin closest to the button is the 3.3v live. The one underneath is it ground.

Once I managed to successfully flash it, I could not upload the data files via the Arduino IDE - it said no storage space. But the firmware flash was enough to bring up the wifi interface and allowed me to follow the steps above to clean out the files and add the new ones.

Oh, also. On MacOS, Arduino V2 allows you to flash the firmware but the ESP8266FS tool is broken. If you want to use the ESP8266FS tool as per the repo README instructions you need to use Arduino V1 which is on the same download page, just lower down.
Post Reply