That sounds fairly straightforward. Do you have easy means to flash the esp32 on hand? I might just start implementing that even before I have the actual hardware. I could provide you a hex file that you could then try out without setting up any development environment. I just need maybe some example of what I should expect to receive over the serial Port.
var PV2="################################################################################################################################################################################################################################################";
var Btp="#####################################################''((()*++,--.../0001122357:>BFKPUZ_dinsx}J#################################################################################################################################################";
var Btn="/0000/0000///0000/0000+%################################################################################################><>>>>@>>>===?=>>?????>?>>>>>A@BB>>==???>=?<?=>==>>==?>>>>=@C===7IO7=C=CC7C==CC=77=CC=7I77===C=17==CC========7=77777C17=";
var Ld ="########################################################################################################################%$%%$%&$%%%%%%$$%%&&%&%%%$$%%'&''$%$%%%%%$%$%$%$%%%$$%%%%%$&)####/5##)#))#)##))####))##/#####)#####))###############)###";
var ELd="{||||||||||||||||{||||]3########################################################################################################################################################################################################################";
var sbms="7)%/'0$+GnGmGwGsGtGvH#H1*o##-##7########################%N(";
var xsbms="###L6>N$##n";
var gsbms="#p9#######pZ##B##O#.$##'##5#########";
var eA="###%$H###&#p###############&#p####?2###$v]";
var eW="####S^####mD################mD####*Y####Q?";
var s1=['Ah','A','SBMS0 '];
var s2=[0,0,0,0,0,0,0,0,8,2,1,1];
var dmppt="############################################################";The project will definitely be open source and will be available on my GitHub. I will also post an update here as soon as there is something to try out.
Is the webpage enough for your needs or would you also like MQTT support?
The plan was to have the esp32 serve the HTML page by itself like any other webpage on smart devices as well. You'd only have to point the browser to its IP or hostname and that's it.
Depending on how it turns out, you could probably still use a local HTML page to connect, though. There will be changes to the HTML on the esp32 to manage wifi settings etc.
I think we'll manage something that works for you.
Well, I got a start. It shows the dummy data Dacian posted a few mails back. All I had to change in the html was the url to the data. There are a few little quirks with the WiFi config I still have to work out, plus I need to actually read in the data via the serial connection. But that should be done tomorrow around this time.

While the usb connection can be a reliable and safe alternative for configuration, I think it is not very practical for everyday monitoring. The esp32 is just a few dollars and adds so much value in my opinion. We could even use Bluetooth low energy instead of wifi to conserve power. I'll be glad to support any development on the esp platform so you can focus on the important stuff ;)
In most cases I think wifi can work well enough, though. Even with an old tablet.
For remote monitoring it is easily the best way and with MQTT you could push the data anywhere you want without any extra devices apart from some kind of WiFi enabled internet access.
Would much appreciate as much detail and coding as you can spare. Thx!
You actually don't need any IDE for just compiling and flashing. A simple "pip install -U platformio" command should do.
I described the whole procedure here: https://github.com/armageddon421/electrodacus-esp32/blob/master/README.md
Visual studio code is useful for development, but I have not actually used it on Linux. I often work remotely on the command line only ;)
Seems like a lot happened while I was sleeping. I'm happy you could get it to work!
Hcould I have forgotten such a simple thing as telling you the default password? I guess it was late.
The default password is electrodacus
I also have more insight a out the startup logging. Apparently you have to get rid of it in 3 different places. To silence the bootloader which is permanently installed on the esp32, you have to tie gpio15 to GND. The other output I should be able to silence in the firmware itself.

Looks fantastic, thanks for your effort Robert!
Here is what I've got so far. It should be working, but I could only test on a different device and with fake data sent over the serial port.
You need a USB to Serial/UART converter with an interface level of 3.3V. 5V will destroy your ESP32. And any "PC" with any OS supported by plattformIO with installed python (2.7 should do). Make sure pip works.
I got MQTT support working today and made a few tweaks to the software. I think it's pretty stable from what I can test here without the real hardware. I decided to tag a release v0.1 so we have a point of reference for the future. I'm also proud of my unusually good documentation, so make sure to read it if you are interested.
Check it out at https://github.com/armageddon421/electrodacus-esp32
Feel free to leave any suggestions here or at GitHub.
MQTT is a publisher-subscriber based message passing protocol that uses a central server called "broker" to relay the messages. Many IoT applications nowadays support MQTT, devices as well as dashboard and home automation solutions. It is easy to locally host your own local MQTT-Broker (for example Mosquitto) for your home automation needs, a raspberry pi is already enough. I personally use node-red as "glue logic" to connect all my sensors and actors, feed my databases and for creating logic.





Glad everything seems to work.
We could use Ajax or even websockets for refreshing the data. I think it should actually work the same way as before, but I might not understand exactly how it worked before.
I'll probably try writing a completely new page at some point.









For the web refresh problem, I think that refresh mechanic is really meant to refresh the whole page. For dynamic refreshing we should use Ajax or websockets.
Thanks for the detailed testing.
I think I have found the problem and will work on solving it. I intentionally am creating json representations of the data even when MQTT ist disabled in order to not hide issues related to that. Turns out the json library I used is slow enough that I loose data from the serial port in the meanwhile. I think I can provide a fix later today.
ets Jun 8 2016 00:22:57
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:2
load:0x3fff0018,len:4
load:0x3fff001c,len:852
load:0x40078000,len:10528
load:0x40080400,len:3020
entry 0x400805d4
Can you elaborate a bit on what you mean by wifi menu settings? I'm really not familiar with the default firmware and I can not find much documentation apart from AT command lists etc.