ESPproMon Integration


You need to do the firmware update first as per the post before this one.


Great Stuff!!! Its working great Paul!. I tested it with 2 methods incl: (And both is working)

  1. I used my dataplicity link which “ttps://” (0000 replaced by my 4 numbers)
  2. I used my EmonCMS local IP Address which is “ttp://”

I had a slight problem where, when I select option “37 Local EmonCMS URL” my Wemos D1 Mini would reboot. It happened a few times. After I saw it logging to my local server I wanted to change my node number so when I selected option “18 Set EmonCMS node number” it rebooted again.

This was my first Wemos that I flashed and MAY have done it incorrectly, I will reflash it the correct way and will let you know in a hour or two. :slight_smile:

Thank you again Paul.


I am a little surprised that the local IP address works because my understanding is that the Webhook can only access external URL’s. Blynk has previously said that is how their widget works.

I have checked the firmware and I can confirm that parameter 18 relating to node number is not currently coded.

This is the code for parameter 18 i.e. it does nothing:

case 18: // change node number for (TODO code this up)


Nobody has really needed this so even though the menu option appears in the app it doesn’t do anything.

Regarding parameter 37 (server URL) and also for me several other parameters like 24 check firmware I have also noticed that it is sometimes rebooting the ESP8266 rather than accepting the instruction.

The way the parameters are coded is that most of them expect a number to be entered but a few expect a text string. The firmware handles numbers and string differently but I can’t understand why it sometimes crashes the ESP8266 and sometimes it doesn’t.

For now I am going to work on the basis that the coding is OK becuase if it wasn’t it would never work. This suggests either the ESP8266 or the network is busy processing something else when the parameter is received.

It is quite annoying as it took me about 40 attempts to update the firmware for a couple of systems by selecting parameter 24 a few days ago. I will continue to monitor this.


I have made a few minor adjustments to the firmware such as when you select parameter 18 the terminal widget should respond with “Node number is not currently supported”.

Similarly parameters 38, 39 and 40 should return “Parameter not coded yet”.

Selecting parameter 24 should update the firmware to show NEXT VERSION V00225 if you don’t want to wait for the automatic update at midnight tonight.

I checked the EmonCMS updating in demo mode and if the api key has been set it will send data to the server. So remove the key by entering a single character for the key if you don’t want to see demo data in EmonCMS, then re-enter the correct key when demo mode has been disabled.

The EmonCMS server URL does not need to be removed to disable server updating, just the key.

From some preliminary tests it appears that selecting the parameters is more successful if you put the app into demo mode, but remember to remove the api key first if you don’t want to see demo data in the EmonCMS system.


BEFORE you start using the local EmonCMS server on your Rapsberry Pi there are 3 extra modules that you should install after setting up the server.

See the Modules section in the following page.

You should add Graph, Dashboard and App modules.


We have uploaded a new version of the firmware which allows you to set the node number for EmonCMS. If you only have one device you don’t need to set a node number as it will default to node 1.
Below is a screenshot of one device which we varied the node number from 1 to 4.

If you set a node number it will be shown at the bottom of the TARIFF page.

The facility is currently only available for local EmonCMS servers. If you wanted to use it with it should work if you set the “local” URL as “ttps://”. You would also need to set the write API key as key=32characters (replacing 32 characters with your actual key).


Great stuff Paul! I tested and its working. Thank you very much. :slight_smile:

It did not work at first then I added my Dataplicity link and it worked. Then when I added the local IP again it worked.


I will have to test this when I have time as I don’t think local IP’s are accepted by the system.


I am not able to upgrade the firmware to V00225. I tried using Parameter 24, but it did not work.


@Eleandro does the app show the prompt that it is checking the server for the new firmware or is it failing to notice that you have selected parameter 24?


When selected, parameter 24 shows:
Pacefair Pzem selected

Cost bands defined for:

Cost ranges defined for:
Firmaware is registered

Initialized 1 <<
MAC address: XX: XX: xx: xx: xx: xx
Super PUSH disabled


That is the text you see when the ESP8266 reboots. For some reason it sometimes doesn’t accept the parameters. You can keep trying or simply wait until midnight and it should then do the firmware update automatically.


Sometimes he accept the parameter and a show themessage :
The system will reboot and update your NEXT VERSION number if the firmware is updated. meanwhile just continue using the app.

In this moment ESP stay offline and Soon after that, reconect and the message that I sent earlier is appear.


I have checked the server and you appear to be the only registered user that doesn’t have the latest firmware on your ESP8266. So the system is working for the other users and shows the NEXT VERSION as V00226.

You have 2 firmware updates to do.

Which ESP8266 are you using?

It could be related to your geographical location and perhaps the update is timing out.

Also is your system normally running at midnight or does it go offline for part of the day?

Another way to do the update would be to download the latest version of the firmware as provided in the link at
The link is hidden within a concertina section of the website and some users struggle to find it so the direct link is

Let us know how you get on.


I am using CH340 NodeMcu V3.
My system stay offline just in the moment when i select parameter 24.
I may install in other NomeMcu the lastest.bin and after exchage the NodeMcu ?


Yes this is OK.


I was able to update the firmware the version V0226, but I still have difficulty in select and changed parameter