IQRF GW daemon
IQRF GW daemon with the multiple communication channels - UDP/MQ/MQTT.
See the daemon architecture
See the daemon component model
See the daemon component instances
How to install the daemon
- iqrf-daemon_0.6.0-1_amd64.deb
- iqrf-daemon_0.6.0-1_armhf.deb
- libpaho.mqtt.c_1.1.0_amd64.deb
- libpaho.mqtt.c_1.1.0-1_armhf.deb
Download public key to verify the packages from the repository
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 66CB9A85
Add repository to the source list
- For Debian (amd64)
echo "deb http://repos.iqrfsdk.org/debian jessie testing" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
- For Ubuntu (amd64)
echo "deb http://repos.iqrfsdk.org/ubuntu xenial testing" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
- For Raspbian (armhf)
echo "deb http://repos.iqrfsdk.org/raspbian jessie testing" | sudo tee -a /etc/apt/sources.list
sudo apt-get update
Install or update the daemon
sudo apt-get install iqrf-daemon
or
sudo apt-get update
sudo apt-get upgrade iqrf-daemon
Check the daemon service status
sudo systemctl status iqrf-daemon.service
● iqrf-daemon.service - IQRF daemon iqrf_startup
Loaded: loaded (/lib/systemd/system/iqrf-daemon.service; enabled; vendor preset: enabled)
Active: active (running) since Čt 2017-03-30 23:46:50 CEST; 2min 58s ago
Main PID: 9540 (iqrf_startup)
CGroup: /system.slice/iqrf-daemon.service
└─9540 /usr/bin/iqrf_startup /etc/iqrf-daemon/config.json
Set your configuration
CK-USB-04a or GW-USB-06 devices must be switched to USB CDC IQRF mode using IDE menu: tools/USB classes/Switch to CDC IQRF
Follow the guidance here
Configure/check mainly following components:
- config.json (tip: enable/disable daemon components)
- IqrfInterface.json (tip: configure your IQRF interface - SPI/CDC)
- TracerFile.json (tip: check your logging)
- MqttMessaging.json (tip: configure your MQTT brokers - you can enable second mqtt instance)
- BaseService.json (tip: see names of running instances of basic service - needed for scheduler)
- Scheduler.json (tip: configure your regural DPA tasks if any)
and restart the service:
sudo systemctl restart iqrf-daemon.service
Content of iqrf-daemon (v0.6.0) package
dpkg -L iqrf-daemon
/.
/usr
/usr/bin
/usr/bin/iqrfapp
/usr/bin/iqrf_startup
/usr/share
/usr/share/doc
/usr/share/doc/iqrf-daemon
/usr/share/doc/iqrf-daemon/copyright
/usr/share/doc/iqrf-daemon/changelog.gz
/lib
/lib/systemd
/lib/systemd/system
/lib/systemd/system/iqrf-daemon.service
/etc
/etc/iqrf-daemon
/etc/iqrf-daemon/UdpMessaging.json
/etc/iqrf-daemon/config.json
/etc/iqrf-daemon/MqMessaging.json
/etc/iqrf-daemon/TracerFile.json
/etc/iqrf-daemon/JsonSerializer.json
/etc/iqrf-daemon/IqrfInterface.json
/etc/iqrf-daemon/SimpleSerializer.json
/etc/iqrf-daemon/MqttMessaging.json
/etc/iqrf-daemon/Scheduler.json
/etc/iqrf-daemon/iqrfapp.json
/etc/iqrf-daemon/BaseService.json
Changes for iqrf-daemon
0.5.1 -> 0.6.0
News:
- json dpa structure according to the description in wiki (Only type raw and raw-hdp are fully implemented!)
0.5.0 -> 0.5.1
Fixes:
- iqrfapp cmdline parser
- json dpa response timestamps
- json dpa response fields order
Content of libpaho.mqtt.c (v1.1.0) package
dpkg -L libpaho.mqtt.c
/.
/usr
/usr/lib
/usr/lib/libpaho-mqtt3c.so.1.1.0
/usr/lib/libpaho-mqtt3as.so.1.1.0
/usr/lib/libpaho-mqtt3cs.so.1.1.0
/usr/lib/libpaho-mqtt3a.so.1.1.0
/usr/bin
/usr/bin/MQTTVersion
/usr/share
/usr/share/doc
/usr/share/doc/libpaho.mqtt.c
/usr/share/doc/libpaho.mqtt.c/copyright
/usr/share/doc/libpaho.mqtt.c/changelog.gz
How to build iqrf-daemon from the source code
See the guidelines here
How to run iqrf-daemon in Docker container
See the guidelines here