sudo apt-get update
sudo apt-get install git build-essential libssl-dev libwrap0-dev libc-ares-dev uuid-dev automake libtool cmake
wget http://mosquitto.org/files/source/mosquitto-1.4.8.tar.gz
tar zxvf mosquitto-1.4.8.tar.gz
cd mosquitto-1.4.8
make all
sudo make install
sudo ldconfig
git clone https://github.com/stephane/libmodbus.git
cd libmodbus
./autogen.sh
./configure
make
sudo make install
sudo ldconfig
Download Vortex Lite, then install it.
# node.js mqtt broker
npm install mosca bunyan -g
git clone https://github.com/taka-wang/dds-modbus.git
cd dds-mosbus
mkdir build
cd build
cmake ..
make # master and bridge in build folder
# option: use your own mqtt broker
mosca -v --http-port 3000 --http-bundle --http-static ./ | bunyan # mqtt broker
# modbus <--> dds
./master
# dds <--> mqtt
./bridge
See README
# subscribe rotary value
mosquitto_sub -h 192.168.0.107 -d -t "/sensors/rotary/3"
# turn on led red
mosquitto_pub -h 192.168.0.107 -d -t /sensors/led/16 -m "1"
# turn off led red
mosquitto_pub -h 192.168.0.107 -d -t /sensors/led/16 -m "1"
# turn on led green
mosquitto_pub -h 192.168.0.107 -d -t /sensors/led/17 -m "0"
# turn off led red
mosquitto_pub -h 192.168.0.107 -d -t /sensors/led/17 -m "0"
You may test the programs with Naive Dashboard or Node-Red with MQTT Flow.