Translations:Wiren Board Device Modbus Address/4/en

Материал из Wiren Board
root@wirenboard:~# service wb-mqtt-serial stop

Let's try to determine the current address of the module. To do this, at the command line, run a cyclic command to poll the register of 0x80 devices with addresses from 1 to 247:

root@wirenboard:~# for i in {1..247}; do modbus_client -mrtu /dev/ttyAPP1 --debug -a$i -t3 -r0x80 -s2 -pnone; done 2>/dev/null | grep Data:      
        Data: 0x0072

Result: the address of the connected device is 0x0072, i.e. 114. It takes a little more than 2 minutes to search all addresses from 1 to 247. In the parameters of the modbus_client command call, we specify 2 stop bits( -s2), no parity ( -pnone), the speed of 9600 bit/s is set automatically. Read the command READ_HOLDING_REGISTERS with code 3 (-t3) from the register with the address 0x80 ( -r0x80), the address changes in the cycle from 1 to 247 ( -a$i). On some devices, the led blinks when communicating with them.

Status led blinks when communication via RS-485 module WB-MR14