Energy meter Orno51x and modbus

Hi,
I change platform from Openhab to Home Assistant, but my problem is to set energy meter orno 51x via modbus in HA,

In OH2 my cfg see like that

serial.home_freq.connection=/dev/ttyUSB0:9600:8:even:1:rtu:150:1000:none:none
serial.home_volt.connection=/dev/ttyUSB0:9600:8:even:1:rtu:150:1000:none:none

poll=5000
serial.home_freq.type=holding
serial.home_freq.id=1
serial.home_freq.start=20
serial.home_freq.length=2
serial.home_freq.valuetype=float32

serial.home_volt.type=holding
serial.home_volt.id=1
serial.home_volt.start=14
serial.home_volt.length=6
serial.home_volt.valuetype=float32

In HA i have only this

modbus:
  type: serial
  name: hub
  methos: rtu
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N

And error

Invalid config for [modbus]: [methos] is an invalid option for [modbus]. Check: modbus->modbus->0->methos. (See /config/configuration.yaml, line 261).

someone can help me finish the configuration so that I can get the data from the energymeter?

my yaml

modbus:
  type: serial
  name: orno51
  method: rtu
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N
  timeout: 2
  
sensor:
 - platform: modbus
   scan_interval : 5
   registers:
     - name: home_volt
       hub: orno51
       slave: 1
       register: 14
       count: 6
       data_type: float

     - name: home_freq
       hub: orno51
       slave: 1
       register: 20
       count: 2
       data_type: float

     - name: home_curr
       hub: orno51
       slave: 1
       register: 22
       count: 6
       data_type: float

     - name: home_power
       hub: orno51
       slave: 1
       register: 28
       count: 8
       data_type: float

     - name: home_energy
       hub: orno51
       slave: 1
       register: 256
       count: 8
       data_type: float  

error

2020-02-27 19:41:26 WARNING (SyncWorker_15) [pymodbus.client.sync] Cleanup recv buffer before send: 0xfc
2020-02-27 19:41:26 ERROR (SyncWorker_15) [homeassistant.components.modbus.sensor] No response from hub orno51, slave 1, register 20
2020-02-27 19:41:32 WARNING (SyncWorker_2) [pymodbus.client.sync] Cleanup recv buffer before send: 0x3e
2020-02-27 19:41:32 ERROR (SyncWorker_2) [homeassistant.components.modbus.sensor] No response from hub orno51, slave 1, register 20
2020-02-27 19:41:38 WARNING (SyncWorker_4) [pymodbus.client.sync] Cleanup recv buffer before send: 0x5d
2020-02-27 19:41:38 ERROR (SyncWorker_4) [homeassistant.components.modbus.sensor] No response from hub orno51, slave 1, register 20
2020-02-27 19:41:44 WARNING (SyncWorker_14) [pymodbus.client.sync] Cleanup recv buffer before send: 0x5f
2020-02-27 19:41:44 ERROR (SyncWorker_14) [homeassistant.components.modbus.sensor] No response from hub orno51, slave 1, register 20

It should be method, not methos, as reported here: https://www.home-assistant.io/integrations/modbus/

Ok i change and now

error
Unable to detect data type for home_energy sensor, try a custom type

modbus:
  type: serial
  name: orno51
  method: rtu
  port: /dev/ttyUSB0
  baudrate: 9600
  stopbits: 1
  bytesize: 8
  parity: N
  timeout: 2
  
sensor:
 - platform: modbus
   scan_interval : 5
   registers:
     - name: home_volt
       hub: orno51
       slave: 1
       register: 14
       count: 6
       data_type: float
     - name: home_curr
       hub: orno51
       slave: 1
       register: 22
       count: 6
       data_type: float
     - name: home_power
       hub: orno51
       slave: 1
       register: 28
       count: 8
       data_type: float
     - name: home_energy
       hub: orno51
       slave: 1
       register: 256
       count: 8
       data_type: float

I suggest you to test one data at a time.
Then, the example in modbus page does not leave blank lines.

Hello Bartosz

Did you fixed your problem?
I have similar meter and similar problems :wink:
But at first you had the wrong parameter:
parity: N
It should be:
parity: E
“Even” just like you had in OH2 config.
But even after this setting, I still have a problem with reading the registers

regards

has anyone been able to read the data from a three-phase orno?

Hi,

I use a 3 phase Orno, model WE-517

For the communication I use a RS485-WiFI converter of Elfin (EW11A).

In Home Assistant I use the following lines to read the values of the energy meter.

modbus:
   - name: bytc
     close_comm_on_error: true
     delay: 5
     timeout: 10
     type: tcp
     host: 10.1.40.100
     port: 502
     #
     sensors:
       - name: "Freq"
         slave: 1
         address: 20
         data_type: float32
         precision: 2
         unit_of_measurement: HZ
#         
       - name: "Voltage L1"
         slave: 1
         address: 14
         data_type: float32
         precision: 1
         unit_of_measurement: V         
       - name: "Voltage L2"
         slave: 1
         address: 16
         data_type: float32
         precision: 1
         unit_of_measurement: V 
       - name: "Voltage L3"
         slave: 1
         address: 18
         data_type: float32
         precision: 1
         unit_of_measurement: V
# 
       - name: "Current L1"
         slave: 1
         address: 22
         data_type: float32
         precision: 1
         unit_of_measurement: A 
       - name: "Current L2"
         slave: 1
         address: 24
         data_type: float32
         precision: 1
         unit_of_measurement: A 
       - name: "Current L3"
         slave: 1
         address: 26
         data_type: float32
         precision: 1
         unit_of_measurement: A
# 
       - name: "Active Power Total"
         slave: 1
         address: 28
         data_type: float32
         precision: 2
         unit_of_measurement: kW 
       - name: "Active Power L1"
         slave: 1
         address: 30
         data_type: float32
         precision: 2
         unit_of_measurement: kW 
       - name: "Active Power L2"
         slave: 1
         address: 32
         data_type: float32
         precision: 2
         unit_of_measurement: kW
       - name: "Active Power L3"
         slave: 1
         address: 34
         data_type: float32
         precision: 2
         unit_of_measurement: kW
#
       - name: "Active Energy Total"
         slave: 1
         address: 256
         data_type: float32
         precision: 2
         unit_of_measurement: kWh
         state_class: total_increasing 
       - name: "Active Energy L1"
         slave: 1
         address: 258
         data_type: float32
         precision: 2
         unit_of_measurement: kWh
       - name: "Active Energy L2"
         slave: 1
         address: 260
         data_type: float32
         precision: 2
         unit_of_measurement: kWh 
       - name: "Active Energy L3"
         slave: 1
         address: 262
         data_type: float32
         precision: 2
         unit_of_measurement: kWh

Maybe you have something on the registerlist I use for this meter.
The “float” addresses work good, im only not sure about the non float addresses like the int16 / 32. I get some value but if its the right one I don’t know. Anyway I don’t need those myself.

how did you find yourself? the reviews on Amazon are not good, both in terms of accuracy and with the count of the output current. can you tell me if the output current is displayed? I’m undecided between orno and eastron which costs twice as much. thank you

For me the price was the point to don’t take the Eastron but the Orno. If I would need just one meter I would had chose the Eastron. At home I needed 6 of them, and it did make a to big difference in price for me.

Why so many… My house is split-up in some apartments, a garage and a garden cabinet .

I know there are bad and good reviews on Amazon. Many reviews also go about the bad documentation and incomplete register list.

About the current, the measured current I see in the Modbus data, looks to me correct. But about the voltage I have my doubts. The measured voltage looks to me high and fluctuate allot. But its really good possible that the grid is here not stable. What is one of the reasons im investing in a storage system.
Anyway, the meters are MID certified, what should mean that the measured values should be acurate.

On the display of the meter is a lot info showed, but its not for all values clear what it is exactly.

The Modbus documentation on the site is not complete. And it did take me some time for me to figure out how to read it. If you transform the HEX addresses to DEC you get the right addresses and the Float on float32.

I still need to replace one kWh meter for a model with Modbus. That one is located directly behind the meter of the network operator. For that meter I will use a different brand/model, Victron EM24.

The Modbus data is store on two places.

  1. for short therm use in Home Assistant
  2. for long therm use in Influxdb with Telegraf. To analyse the usages over a long period.

Hope you have something on this info,

Kind regards,
Martin