EPEVER Modbus RS-485 Config

hi, could you point me how con configure the eBox-Wifi-01 to send data to homeassistant? i connected it tomy wifi and could access the the configuration webpage but i need more info on how to access the data .

These are the settings I used to use in my configuration.yaml:

  - name: epever-wifi
    type: rtuovertcp
    host: 10.240.1.7
    port: 8088
    switches:
      - name: Load Switch Wifi
        slave: 1
        address: 2
        write_type: coil
        verify:
    sensors:
      - name: "Battery Array Capacity Wifi"
        unit_of_measurement: '%'
        slave: 1
        device_class: battery
        address: 12570
        input_type: input
        scan_interval: 5
      - name: "Solar Power Watts Wifi"
        unit_of_measurement: W
        device_class: power
        slave: 1
        address: 12546
        input_type: input
        data_type: int32
        scale: 0.01
        count: 2
        precision: 2
        swap: word
        scan_interval: 5
      - name: "Solar Voltage Wifi" 3100
        unit_of_measurement: V
        slave: 1
        device_class: voltage
        address: 12544
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Solar Amps Wifi"  0x003101
        unit_of_measurement: A
        slave: 1
        device_class: current
        address: 12545
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Battery Charging Watts Wifi" 
        unit_of_measurement: W
        slave: 1
        device_class: power
        address: 13084
        input_type: input
        data_type: int32
        scan_interval: 5
        scale: 0.258
        count: 2
        precision: 2
      - name: "Battery Charging Amps Wifi"  0x003101
        unit_of_measurement: A
        slave: 1
        address: 13083
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Battery Voltage Wifi"
        unit_of_measurement: V
        slave: 1
        address: 13082
        device_class: voltage
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Battery Temperature Wifi"
        unit_of_measurement: Ā°C
        slave: 1
        address: 12560
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Controller Temperature Wifi" 0x003111
        unit_of_measurement: Ā°C
        slave: 1
        address: 12561
        input_type: input
        scan_interval: 5
        scale: 0.01
        precision: 2
      - name: "Energy Generated Today Wifi"
        unit_of_measurement: KWh
        slave: 1
        device_class: energy
        address: 13068
        input_type: input
        data_type: int32
        scan_interval: 5
        scale: 0.01
        precision: 2
        count: 2
        swap: word
      - name: "Energy Generated this Month Wifi"
        unit_of_measurement: KWh
        slave: 1
        address: 13070
        input_type: input
        data_type: int32
        scan_interval: 5
        scale: 0.01
        precision: 2
        count: 2
        swap: word
      - name: "Energy Generated this Year Wifi"
        unit_of_measurement: KWh
        slave: 1
        device_class: energy
        address: 13072
        input_type: input
        scan_interval: 5
        data_type: int32
        scale: 0.01
        precision: 2
        count: 2
        swap: word
      - name: "Total Energy Generated Wifi"
        unit_of_measurement: kWh
        slave: 1
        device_class: energy
        address: 13074
        input_type: input
        data_type: int32
        scan_interval: 5
        scale: 0.01
        precision: 2
        count: 2
        swap: word

in the code of example the row with ā€œcountā€ and ā€œswapā€ are deprecated (impossible to set modbus if present) , and i needed to delete the " charater in name rows and the exadecimal values or modbus fail to create .
So i ask, the code is working in your homeassistant ? Because even with the correction so i can set modbus the sensors are not populated so i donā€™t know if i deleted too much or is some HA update deprecated other things.

Iā€™m not actually using that unit at the moment. Start off as basic as possible to get it working first then add in other sensors. Try this:

  - name: epever-wifi
    type: rtuovertcp
    host: [your epever wifi IP]
    port: 8088
    sensors:
      - name: "Battery Array Capacity Wifi"
        unit_of_measurement: '%'
        device_class: battery
        address: 12570
        input_type: input
        scan_interval: 5

thanks, it seems that even if i configure correctly the modbus the data did not pass to HA, sensors are added but no data is sent, so i donā€™t know, there is some configuration on the epever wifi that must be done? i connected it to the wifi, i could enter in the webpage and change settings if needed .

In the settings of your epever-wifi is it using port 8088? Also follow HAā€™s logs for errors.

Also see if you can telnet to port 8088 on the eBox-wifi-01: telnet [your ip] 8088

If you donā€™t get anything back, the port isnā€™t open or is blocked on your network

hi i tried to set up 8088 port and tcp server on this page (see attached image) but after saving the port setting default to port 9999 that it is open (the 8088 is not open). setting port 9999 in homeassistant modbus config donā€™t work, the sensors receive no data.

The server has no IP address? Is it connected to your local network on Station mode?

yes at both the question, the Server adress is editable only if i choose TCP-Client instead of TCP-Server . the device is connected to the mail wifi and is reachable over LAN. Maybe i have a different firmware ? Your instruction donā€™t mention the page above.

Give Me a few days. The weather is crap here but Iā€™m going to replace one of my epever charge controllers on my roof that powers my radio gear with a new controller and Iā€™ll use the old one to test my epever wifi unit and make a vid tute for how to set it up.

Thanks a lot!

I just plugged my unit in and it worked. The only difference I could see is under Other Setting the Server Address was 11.11.11.100 and wasnā€™t editable. If it was in AP mode the unitā€™s IP is 11.11.11.255 so it sets this IP itself. What it may be doing is bridging the unitā€™s local IP (10.240.1.7) to 11.11.11.100.

This is what I used in configuration.yaml:

modbus:
  - name: epever-wifi
    type: rtuovertcp
    host: 10.240.1.7
    port: 8088
    sensors:
      - name: "Epever-Wifi Battery Array Capacity"
        unit_of_measurement: '%'
        slave: 1
        device_class: battery
        address: 12570
        input_type: input
        scan_interval: 5

Hereā€™s some screen caps:




Hi i tried to copy all settings of your screens (apart ip numbers i adapted to my LAN) but i think there is some firmware change, screens are not graphically the same and in no way i could set TCP-SERVER and port 8088, only 9999. So maybe there is some change from Epever that invalid your instruction. Iā€™ll try changing settings and if i find a solution iā€™ll post here . Thanks for the help.

Also ensure the unit is in DHCP mode. Sometimes things like automatic bridging donā€™t work unless in DHCP mode.

Epever support is good and theyā€™ve emailed firmware updates to Me before. Contact them outlining your issue and ask if there is an update: [email protected]

update: the Epever wifi is dead, i donā€™t know what i did but after a reboot it lost the local wifi connection and it is not possible to connect as AP. I tried even a reset , the AP is present, i could connect for maybe 5 seconds and then the connection drop. Now iā€™ll try with a Elfin-EW11A hoping to have better luck.

That sucks. Good luck.