Hello there, thank you for posting to the forum.
Very cool to see you are using NodeRed, I got interested in it a while back and made a simple call to the PushAPI (I'll paste in my snippet below). Node Red seems like a good combination of really powerful and easy to understand, I should take another look.
Our meters are not technically Modbus, they do communicate over RS485 like many Modbus devices do, but they use a simple single format call and response. Modbus is too limited by design for what we are trying to accomplish.
(We are developing a multi-protocol EKM/Modbus protocol meter, if you email us, we will let you know when it is available.)
Our meters use a heavily modified version of an IEC 62056-21 communication standard. The v3 and v4 meter protocols are outlined in this section of our Developer Portal:
http://documents.ekmmetering.com/api-do ... unications I would say our protocol is easier to understand than modbus in that it is a simple request string that contains the meter number, and if any meter in the string sees its meter number it responds with 90% of its meter data. One huge advantage of our protocol over Modbus, is that our protocol allows for up to 999999999999 unique devices to be used on our system (each of our meters ships with a unique ID), whereas Modbus was created under a different paradigm and only has 255 possible addresses (you would have to assign address 1-255 when you install a meter)
The physical hardware and 2-wire communication system are the same as is used for Modbus. The remote read is a simple 2 wire RS-485 system which allows the meter string (up to 256 meters on a string) to be read from up to 4000 feet away.
This string of meters can then be connected to one of our USB Converters or our EKM Push and from there you can read your meters with a computer or over the internet from anywhere in the world.
Node Red snippet:
Code: Select all
[{"id":"9c2a35fa.419698","type":"http request","z":"c896c7cd.77e708","name":"EKM","method":"GET","ret":"obj","url":"http://io.ekmpush.com/readMeter?meters=300000369&ver=v4&key=MTExOjExMQ&fmt=json&cnt=10","tls":"","x":622.8924102783203,"y":802.5520324707031,"wires":[["ebfee2a0.f326d"]]},{"id":"2e6b9b25.654d84","type":"inject","z":"c896c7cd.77e708","name":"","topic":"","payload":"","payloadType":"date","repeat":"60","crontab":"","once":true,"x":390.89588928222656,"y":764.6180114746094,"wires":[["9c2a35fa.419698"]]},{"id":"1994256c.85003b","type":"debug","z":"c896c7cd.77e708","name":"","active":true,"console":"false","complete":"false","x":969.2813262939453,"y":989.2292058379564,"wires":[]},{"id":"ebfee2a0.f326d","type":"function","z":"c896c7cd.77e708","name":"","func":"\nreturn msg;","outputs":1,"noerr":0,"x":713.829865867709,"y":981.5208843725699,"wires":[["33c99413.ec6c4c","1994256c.85003b"]]},{"id":"33c99413.ec6c4c","type":"file","z":"c896c7cd.77e708","name":"","filename":"Node red file maker","appendNewline":true,"createDir":true,"overwriteFile":"false","x":894.1597671508789,"y":1106.9999465942383,"wires":[]}]