I just got done doing part of my code to get Home Assistant working my EPEVER solar charge controller.
Here is the information and I hope it helps. I will ad
Using the eBOX-TCP-02 RS-485 to an 80amp solar charge controller. Some command didn’t work on my controller, but they might work on yours. Note some are commented out, so turn items on and off as needed. This all went into my configuration.yaml file. I plan to add includes later to my file.
modbus:
- name: epever
type: rtuovertcp
host: putyouriphere
port: putyourporthere
Then I put in this code to match most of the ICD
https://files.i4wifi.cz/inc/_doc/attach/StoItem/7068/MODBUS-Protocol-v25.pdf
#EPEVER
#Rated Data
- name: PV Charging Equipment Rated Input Voltage #0x003000
hub: epever
unit_of_measurement: V
slave: 1
register: 12288
register_type: input
scale: 0.01
precision: 1
# - name: PV Charging Equipment Rated Input Current #0x003001
# hub: epever
# unit_of_measurement: A
# register: 12289
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Input Power Low #0x003002
# hub: epever
# unit_of_measurement: W
# register: 12290
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Input Power High #0x003003
# hub: epever
# unit_of_measurement: W
# register: 12291
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Output Voltage #0x003004
# hub: epever
# unit_of_measurement: V
# register: 12291
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Output Current #0x003005
# hub: epever
# unit_of_measurement: A
# register: 12292
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Output Power #0x003006
# hub: epever
# unit_of_measurement: W
# register: 12293
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Rated Output Power 2 #0x003007
# hub: epever
# unit_of_measurement: W
# register: 12294
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Mode #0x003008
# hub: epever
# unit_of_measurement: "mode"
# register: 12295
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Rated Output Current of Load #0x00300E
# hub: epever
# unit_of_measurement: A
# register: 12302
# register_type: input
# scale: 0.01
# precision: 1
##############################################################################
#Real-Time Data (Read only) input register
# - name: PV Charging Equipment Input Voltage #0x003100
# hub: epever
# unit_of_measurement: V
# register: 12544
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Input Current #0x003101
# hub: epever
# unit_of_measurement: A
# register: 12545
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Input Power Low #0x003102
# hub: epever
# unit_of_measurement: W
# register: 12546
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Input Power High #0x003103
# hub: epever
# unit_of_measurement: W
# register: 12547
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Output Voltage #0x003104
# hub: epever
# unit_of_measurement: V
# register: 12548
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Output Current #0x003105
# hub: epever
# unit_of_measurement: A
# register: 12549
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Output Power Low #0x003106
# hub: epever
# unit_of_measurement: W
# register: 12550
# register_type: input
# scale: 0.01
# precision: 1
# - name: PV Charging Equipment Output Power High #0x003106
# hub: epever
# unit_of_measurement: W
# register: 12551
# register_type: input
# scale: 0.01
# precision: 1
##############################################################################
# - name: Over Temp Inside Device # 0x002000
# hub: epever
# slave: 1
# register: 8192
# register_type: input
# scale: 1
# precision: 0
# - name: Day/Night # 0x00200C
# hub: epever
# slave: 1
# register: 8204
# register_type: input
# scale: 1
# precision: 0
#Status analysis
#Array status:address 3201 bits D15-D10
#Charging status:address 3201 bits D3-D2
#Battery status: address 3200 bits D7-D0
#Load status: address 3201 bits D9-D7,
#Device status: address 3200 bit D15 address 3202 bits D13-D8,D6-D4 address 3201 bits D6 address 2000
- name: PV Array Input Voltage #0x003100
hub: epever
unit_of_measurement: V
slave: 1
register: 12544
register_type: input
scale: 0.01
precision: 2
- name: PV Array Input Current # 0x003101
hub: epever
unit_of_measurement: A
slave: 1
register: 12545
register_type: input
scale: 0.01
precision: 2
- name: PV Array Power # 3102 and 3103
hub: epever
unit_of_measurement: W
slave: 1
register: 12546
register_type: input
scale: .01
count: 2
precision: 2
reverse_order: true
- name: PV Battery Temperature #0x003110
hub: epever
unit_of_measurement: °C
slave: 1
register: 12560
register_type: input
scale: 0.01
precision: 2
- name: PV Device Temperature #0x003111
hub: epever
unit_of_measurement: °C
slave: 1
register: 12561
register_type: input
scale: 0.01
precision: 2
- name: PV Battery State of Charge #0x00311A
hub: epever
unit_of_measurement: "%"
slave: 1
register: 12570
register_type: input
scale: 1
precision: 0
- name: PV Battery Real Rated Voltage #0x00311D
hub: epever
unit_of_measurement: V
slave: 1
register: 12573
register_type: input
scale: .01
precision: 0
- name: PV Battery Status #0x003200
hub: epever
slave: 1
register: 12800
register_type: input
scale: 1
precision: 0
#######################################################################
#D15: 1-Wrong identification for rated voltage
#D8: Battery inner resistance, abnormal 1, normal 0
#D7-D4: 00H Normal, 01H Over, Temp.(Higher than the warning settings) 02H Low Temp.(Lower than the warning settings),
#D3-D0: 00H Normal ,01H Over Voltage. , 02H Under Voltage, 03H Over discharge, 04H Fault
#Status analysis
#Array status:address 3201 bits D15-D10
#Charging status:address 3201 bits D3-D2
#Battery status: address 3200 bits D7-D0
#Load status: address 3201 bits D9-D7,
#Device status: address 3200 bit D15 address 3202 bits D13-D8,D6-D4 address 3201 bits D6 address 2000
############################################################################################
- name: PV Charging Equipment Status #0x003201
hub: epever
slave: 1
register: 12801
register_type: input
scale: 1
precision: 0
#######################################################################
#D15-D14: Input voltage status. 00H normal, 01H No input power connected, 02H Higher input voltage , 03H Input voltage error.
#D13: Charging MOSFET is short circuit.
#D12: Charging or Anti-reverse MOSFET is open circuit.
#D11: Anti-reverse MOSFET is short circuit.
#D10: Input is over current.
#D9: The load is over current.
#D8: The load is short circuit.
#D7: Load MOSFET is short circuit.
#D6:Disequilibrium in three circuits.A17
#D4: PV input is short circuit.
#D3-D2: Charging status. 00H No charging,01H Float,02H Boost, 03H Equalization.
#D1: 0 Normal, 1 Fault.
#D0: 1 Running, 0 Standby.
#Status analysis
#Array status:address 3201 bits D15-D10
#Charging status:address 3201 bits D3-D2
#Battery status: address 3200 bits D7-D0
#Load status: address 3201 bits D9-D7,
#Device status: address 3200 bit D15 address 3202 bits D13-D8,D6-D4 address 3201 bits D6 address 2000
############################################################################################
- name: PV Maximum Battery Voltage Today #0x003302
hub: epever
unit_of_measurement: V
slave: 1
register: 13058
register_type: input
scale: 0.01
precision: 2
- name: PV Minimum Battery Voltage Today #0x003303
hub: epever
unit_of_measurement: V
slave: 1
register: 13059
register_type: input
scale: 0.01
precision: 2
- name: PV Consumed Energy Today #0x003304 and 0x003305
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13060
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Consumed Energy This Month #0x003306 and 07
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13062
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Consumed Energy This Year #0x003308 & 09
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13064
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Total Consumed Energy #0x00330A & 0B
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13066
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Generated Energy Today #0x00330C & 0D
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13068
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Generated Energy This Month #0x00330E & 0F
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13070
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Generated Energy This Year #0x003310 & 11
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13072
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Total Generated Energy #0x003312 & 13
hub: epever
unit_of_measurement: KWh
slave: 1
register: 13074
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
- name: PV Battery Voltage #0x00331A
hub: epever
unit_of_measurement: V
slave: 1
register: 13082
register_type: input
scale: 0.01
precision: 2
- name: PV Battery Current #0x00331B & 1C
hub: epever
unit_of_measurement: A
slave: 1
register: 13083
register_type: input
scale: 0.01
precision: 2
count: 2
reverse_order: true
###############################################################################