
My RS485 board led indicates me that it receives an input aprox. Sometimes I get three Failed responses for every Success one. My first problem after this is that I get intermittent errors (“E2”, “E3”, but sometimes just the number “2”) that are not very clear and can mean anything. You can also translate it to decimal, but I prefer it in HEX to be easier to check on the manual.įor example, to get voltage (from the manual: 2000H), we'll need to use: result = node.readInputRegisters(0x2000,2) We need to use the register from the manual, but "prefixing" 0x and removing the H suffix. Now, here we have read the Modbus information.

Here, we have to get the ID from the DDSU so I checked the Communication Address on the device's display (001).
HUAWEI SNS IM CENTER ARDUINO CODE
Everything is very similar to what you posted (that I believe is from the example from ModbusMaster Github), here are the main changes and clarifications:Įverything related to the Pre/Post Transmission is removed from my code since the board manages it for me. And the board has RX/TX led activity indicators that are very nice for troubleshooting. I believe the main difference is that the whole pre/post transmission logic is managed by the board itself and, aside from 3.3/GND, it only needs TX/RX pins. It’s a RS485 bilateral to UART TTL and it’s very similar to MAX385. I’ve got this model (but purchased from my local electronics shop). I’ll try to help:įirst, my RS485 transceiver is a little bit different from yours.

My set up is slightly different from yours.

I wanted to do something similar to you and managed to get this working, it was very far from easy! Lots and lots of trial and error.
