mirror of
https://github.com/RIOT-OS/RIOT.git
synced 2024-12-29 00:49:45 +01:00
cefbc394ca
Pull in lwip_netdev for netdev integration automatically if there is any netdev to integrate, otherwise don't pull in the module. As a result, applications no longer need to select that module by hand. |
||
---|---|---|
.. | ||
main.c | ||
Makefile | ||
Makefile.board.dep | ||
Makefile.ci | ||
Makefile.gnrc | ||
Makefile.lwip | ||
README.md |
About
This application demonstrates the usage of the Eclipse paho MQTT package in RIOT.
Setup
For using this example, two prerequisites have to be fulfilled:
-
You need a running MQTT broker like Mosquitto broker for example. Take a look at Mosquitto Broker. Check online any guide that will help you setting up the broker into some port (a). For example this one for debian base linux users How to setup a Mosquitto MQTT Server and receive data.
-
Your RIOT node needs to be able to speak to that broker at the same port you set in 1.
Setting up RIOT native
on Linux
- Run
sudo ./dist/tools/tapsetup/tapsetup -c 1
Running the example
-
Run on RIOT's root directory:
make -C examples/paho-mqtt all term
-
To connect to a broker, use the
con
command:
con <broker ip addr> [port] [clientID] [user] [password] [keepalivetime]
- broker ip addr: IPv6 or IPv4 broker address.
- port: broker port. Default 1883
- client ID: is the client id you set up on the broker. Default can be set through DEFAULT_MQTT_CLIENT_ID in your makefile. Otherwise is an empty string.
- user: the one set in the broker, check online tutorial to do it regarding chosen broker. Default user can be set through DEFAULT_MQTT_USER in your makefile. Otherwise is an empty string.
- password: the one set in the broker, check online tutorial to do it regarding chosen broker. Default user can be set through DEFAULT_MQTT_PWD in your makefile. Otherwise is an empty string.
- keepalivetime: keep alive in seconds for your client. Default 10 secs.
- To subscribe to a topic, run
sub
with the topic name as parameter and a QoS level between 1 to 3, e.g.
sub hello/world 2
- To unsubscribe to a topic, run
unsub
with the topic name e.g.
unsub hello/world
- For publishing, use the
pub
command with a QoS level between 1 to 3:
pub hello/world "One more beer, please." 2