Help!: Schneider EM6436 Energy meter and Raspberry Pi3

480 views
Skip to first unread message

Sai Shibu

unread,
Jan 27, 2017, 6:40:04 AM1/27/17
to pymodbus
Hello all, 

Im trying to connect Schneider's EM6436 energy meter and RPi3 with RS485. I could establish the connection successfully. The holding registers address are from 403901 onwards, when i try to use the class "client.read_holding_registers(403901,1,unit=1)".

I get an error saying the limit for registers are between 0 & 65535. should i use a different class?

Timothy Arnold

unread,
Jan 27, 2017, 8:00:24 AM1/27/17
to pymo...@googlegroups.com
Firstly I'm not a modbus expert...!

Looks like you have an additional number in your request - it should be 43901 rather than 403901. Note that the actual register you may want is 3901, as the leading 4 is the holding register table so should get added as part of the request (sorry for the wrong terminology)

Hope that helps

Thanks
Tim


--
You received this message because you are subscribed to the Google Groups "pymodbus" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pymodbus+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Sai Shibu

unread,
Jan 27, 2017, 11:52:41 PM1/27/17
to pymodbus
Thanks for the reply!

Please check the attached datasheet of the meter. The address starts from 3001. but the modbus tester software that came with the meter starts the address from 403001. if I give just 3001, i get a response from the meter saying 131,1,IllegalAddress. 
To unsubscribe from this group and stop receiving emails from it, send an email to pymodbus+u...@googlegroups.com.
EM6436 Modbus address.pdf

Timothy Arnold

unread,
Jan 28, 2017, 4:59:57 AM1/28/17
to pymodbus

Looks like it's an input rather than holding so try client.read_input_register ?

Sai Shibu

unread,
Jan 28, 2017, 5:10:04 AM1/28/17
to pymodbus
tried.. it says illegal function

Sai Shibu

unread,
Feb 9, 2017, 12:32:19 AM2/9/17
to pymodbus
It is working now. Only thing we have to do is call the complete block using read_holding_register, The address mentioned in the data sheet is the end address. we have to pull the data from the start address and mention the number of registers based on the blocks. 

Nithin S

unread,
Jan 8, 2018, 12:29:55 PM1/8/18
to pymodbus
hi sai shibu,
                     I am working with the same meter EM6436, could you help me in reading the data in rs485.
Reply all
Reply to author
Forward
0 new messages