Commit 93ce05c6 authored by Rostislav Spinar's avatar Rostislav Spinar

Update to current state

parent a0c46ff7
# UP-IQRF IoT Starter Kit - Installation
* Part 1: [Build your IQRF network](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/PART1-NET.md)
* Part 2: [Install your IQRF gateway](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/PART2-GW.md)
* Part 3: [Connect to cloud](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/PART3-EXT.md)
* Part 1: [Build your IQRF network](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/PART1-NET.md)
* Part 2: [Install your IQRF gateway](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/PART2-GW.md)
* Part 3: [Connect to cloud](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/PART3-EXT.md)
Create your IQRF network, install and configure your IQRF gateway, set the MQTT connection to the selected cloud. The prepared tutorials help you with the basic settings of all parts.
......@@ -15,5 +15,3 @@ You can find examples of existing solutions here:
* [Lighting control in industrial halls](https://www.iqrfalliance.org/marketplace/datmo-radiocontrol-control-of-lighting-in-industrial-halls)
* [Street lighting](https://www.iqrfalliance.org/marketplace/street-lighting-datmo-modular-system)
* [Sensor networks](https://www.iqrfalliance.org/marketplace/sensnet)
Share your ideas and solve problems with others on [IQRF Forum](https://forum.iqrfalliance.org/viewforum.php?f=44&sid=7d7aa122b2f96427accea8648aa0da1f).
FROM resin/up-board-debian
ENV INITSYSTEM on
MAINTAINER Rostislav Spinar "rostislav.spinar@microrisc.com"
# update repos
RUN echo "deb http://repos.iqrfsdk.org/debian jessie testing" | sudo tee -a /etc/apt/sources.list.d/iqrf-daemon.list \
&& apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F973CFCE6B3BE25C
RUN apt-get update \
&& apt-get install -y iqrf-daemon \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
WORKDIR /opt
ADD http://www.random.org/strings/?num=10&len=8&digits=on&upperalpha=on&loweralpha=on&unique=on&format=plain&rnd=new uuid.txt
RUN date | tee build.txt
COPY config /etc/iqrf-daemon
ADD init.sh /init.sh
ENTRYPOINT ["/init.sh"]
{
"Implements": "IService",
"Instances": [
{
"Name": "BaseServiceForMQ",
"Messaging": "MqMessaging",
"Serializers": [
"SimpleSerializer",
"JsonSerializer"
],
"Properties": {
}
},
{
"Name": "BaseServiceForMQTT1",
"Messaging": "MqttMessaging1",
"Serializers": [
"JsonSerializer"
],
"Properties": {
}
},
{
"Name": "BaseServiceForMQTT2",
"Messaging": "MqttMessaging2",
"Serializers": [
"JsonSerializer"
],
"Properties": {
}
}
]
}
{
"Implements": "ISerializer",
"Instances": [
{
"Name": "JsonSerializer",
"Properties": {
"TODO": "todo"
}
}
]
}
{
"Implements": "IMessaging",
"Instances": [
{
"Name": "MqMessaging",
"Enabled": true,
"Properties": {
"LocalMqName": "iqrf-daemon-110",
"RemoteMqName": "iqrf-daemon-100"
}
}
]
}
{
"Implements": "IMessaging",
"Instances": [
{
"Name": "MqttMessaging1",
"Enabled": true,
"Properties": {
"BrokerAddr": "tcp://127.0.0.1:1883",
"ClientId": "IqrfDpaMessaging1",
"Persistence": 1,
"Qos": 1,
"TopicRequest": "Iqrf/DpaRequest",
"TopicResponse": "Iqrf/DpaResponse",
"User": "",
"Password": "",
"EnabledSSL": false,
"KeepAliveInterval": 20,
"ConnectTimeout": 5,
"MinReconnect": 1,
"MaxReconnect": 64
}
},
{
"Name": "MqttMessaging2",
"Enabled": false,
"Properties": {
"BrokerAddr": "tcp://iot.eclipse.org:1883",
"ClientId": "IqrfDpaMessaging2",
"Persistence": 1,
"Qos": 1,
"TopicRequest": "Iqrf/DpaRequest",
"TopicResponse": "Iqrf/DpaResponse",
"User": "",
"Password": "",
"EnabledSSL": false,
"KeepAliveInterval": 20,
"ConnectTimeout": 5,
"MinReconnect": 1,
"MaxReconnect": 64,
"TrustStore": "/etc/letsencrypt/live/mqtt.example.com/chain.pem",
"KeyStore": "/etc/letsencrypt/live/mqtt.example.com/cert.pem",
"PrivateKey": "/etc/letsencrypt/live/mqtt.example.com/privkey.pem",
"PrivateKeyPassword": "",
"EnabledCipherSuites": "",
"EnableServerCertAuth": true
}
}
]
}
{
"Tasks": [
],
"TasksJson": [
{
"time": "*/5 1 * * * * *",
"service": "BaseServiceForMQTT1",
"message": {
"type": "std-per-ledg",
"nadr": 1,
"cmd": "PULSE",
"hwpid": "ffff",
"timeout": 200,
"msgid": "",
"request": ".",
"request-ts": "",
"response": ".",
"response-ts": "",
"confirmation": ".",
"confirmation-ts": ""
}
},
{
"time": "*/5 1 * * * * *",
"service": "BaseServiceForMQTT1",
"message": {
"type": "raw",
"request": "01.00.06.03.ff.ff"
}
},
{
"time": "*/5 * * * * * *",
"service": "BaseServiceForMQTT1",
"message": {
"type": "raw-hdp",
"nadr": 1,
"pnum": "06",
"pcmd": "3"
}
}
]
}
{
"Implements": "ISerializer",
"Instances": [
{
"Name": "SimpleSerializer",
"Properties": {
"TODO": "todo"
}
}
]
}
{
"TraceFileName": "",
"TraceFileSize": 0,
"VerbosityLevel": "dbg"
}
{
"Implements": "IMessaging",
"Instances": [
{
"Name": "UdpMessaging",
"Enabled": true,
"Properties": {
"RemotePort": 55000,
"LocalPort": 55300
}
}
]
}
{
"Configuration": "v0.0",
"ConfigurationDir": "configuration",
"WatchDogTimeoutMilis": 10000,
"Components": [
{
"ComponentName": "TracerFile",
"Enabled": true
},
{
"ComponentName": "IqrfInterface",
"Enabled": true
},
{
"ComponentName": "UdpMessaging",
"Enabled": true
},
{
"ComponentName": "MqttMessaging",
"Enabled": true
},
{
"ComponentName": "MqMessaging",
"Enabled": true
},
{
"ComponentName": "Scheduler",
"Enabled": true
},
{
"ComponentName": "SimpleSerializer",
"Enabled": true
},
{
"ComponentName": "JsonSerializer",
"Enabled": true
},
{
"ComponentName": "BaseService",
"Enabled": true
}
]
}
#!/bin/bash
while :
do
echo "Starting IQRF DAEMON application..."
/usr/bin/iqrf_startup /etc/iqrf-daemon/config.json
echo "IQRF DAEMON applications has ended, wait for 60 seconds and start it again..."
sleep 60
done
# IoT Starter Kit - Part 2: IQRF GW
## Step 1 - Insert IQRF Coordinator
![IQRF SPI board](https://gitlab.iqrf.org/open-source/iot-starter-kit/blob/master/install/pics/iqrf-spi-board.png)
* Attach [IQRF SPI board](http://www.iqrf.org/weben/downloads.php?id=412)
* Insert prepared IQRF Coordinator to the IQRF SPI board
## Step 2 - Install OS Linux
* Install [UbiLinux 4.0](https://up-community.org/downloads/download/44-ubilinux/90-ubilinux-installer-4-0)
* Post-install tips
```bash
sudo apt update && sudo apt full-upgrade -y
```
## Step 3 - Install Docker CE
* Install [Docker for Debian 9.0 Stretch](https://gitlab.iqrf.org/open-source/iqrf-daemon/blob/master/docker/INSTALL.md)
## Step 4 - Run Docker image
* Ready IQRF GW [image](https://hub.docker.com/r/iqrfsdk/iqrf-gateway-debian/)
```bash
docker container run -d -p 80:80 -p 1883:1883 -p 8080:8080 -p 9001:9001 --device /dev/spidev2.0:/dev/spidev2.0 --privileged --name iqrf-gateway --restart=always iqrfsdk/iqrf-gateway:latest
```
### Check IQRF WebAPP dashboard
```bash
http://localhost:8080
```
![IQRF daemon WebAPP dashboard](https://gitlab.iqrf.org/open-source/iot-starter-kit/blob/master/install/pics/iqrf-daemon-webapp-gateway.png "IQRF daemon WebAPP dashboard")
* Login using: user=admin; pass=iqrf
### Check Node-RED dashboard
```bash
http://localhost/ui
```
![IQRF App dashboard](https://gitlab.iqrf.org/open-source/iot-starter-kit/blob/master/install/pics/node-red-ui.png "IQRF App dashboard")
### Check Node-RED flow
```bash
http://localhost
```
![IQRF App flow](https://gitlab.iqrf.org/open-source/iot-starter-kit/blob/master/install/pics/node-red-flows.png "IQRF App flow")
### Check Supervisor Service dashboard
```bash
http://localhost:9001
```
![IQRF Supervisor dashboard](https://gitlab.iqrf.org/open-source/iot-starter-kit/blob/master/install/pics/supervisor-dashboard.png "IQRF Supervisor dashboard")
## Optional - Stop Docker image
```bash
docker container stop iqrf-gateway
```
......@@ -2,7 +2,7 @@
**Set up and configure IQRF network components with an IQRF IDE installed on your PC.**
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://github.com/iqrfsdk/iot-starter-kit/tree/master/install/pdf/iqrf-part1.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/pdf/iqrf-part1.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
In this part, you will:
......@@ -22,7 +22,7 @@ Your PC must have this minimum configuration to run the IQRF IDE:
* Vista, Windows 7 (32 bit, 64 bit), Windows 8.x (32 bit, 64 bit), Windows 10 (32 bit, 64 bit)
* Internet Explorer 7.0 or higher or other suitable browsers for Help
When you’ve completed this part, you’ll be ready for **[Part 2: Install your IQRF gateway](https://github.com/iqrfsdk/iot-starter-kit/tree/master/install/PART2-GW.md)**.
When you’ve completed this part, you’ll be ready for **[Part 2: Install your IQRF gateway](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/PART2-GW.md)**.
## Watch our video guide
......
......@@ -2,7 +2,7 @@
**Install an operating system, IQRF Gateway Daemon and basic services on the UP board and make the IQRF Gateway from it. Read data from sensors and control relays from a Node-RED application.**
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/pdf/iqrf-part2.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/pdf/iqrf-part2.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
In this part, you will:
......@@ -15,9 +15,9 @@ In this part, you will:
* Install Node-RED and run IoT-Starter-Kit flow
* Read data from sensors and control relays from a Node-RED application
When you’ve completed this part, you’ll be ready for **[Part 3: Connect to the cloud](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/PART3-EXT.md)**.
When you’ve completed this part, you’ll be ready for **[Part 3: Connect to the cloud](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/PART3-EXT.md)**.
If you need to customize the IQRF Gateway, study **[Optional steps with UP board](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/up-board/GW-SbS-INSTALL.md)**, or read instructions for **[Raspberry PI installation](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/rpi-board/GW-SbS-INSTALL.md)**.
If you need to customize the IQRF Gateway, study **[Optional steps with UP board](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/up-board/GW-SbS-INSTALL.md)**, or read instructions for **[Raspberry PI installation](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/rpi-board/GW-SbS-INSTALL.md)**.
## Watch our video guide
......
......@@ -4,7 +4,7 @@
## Connect to Amazon Web Services
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/pdf/iqrf-part3a.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/pdf/iqrf-part3a.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
In this part, you will:
......@@ -21,7 +21,7 @@ In this part, you will:
## Connect to Microsoft Azure
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/pdf/iqrf-part3b.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/pdf/iqrf-part3b.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
In this part, you will:
......@@ -38,7 +38,7 @@ In this part, you will:
## Connect to IBM Cloud
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/open-source/iot-starter-kit/tree/master/install/pdf/iqrf-part3c.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
Carefully read and follow the detailed step-by-step instructions! **[PDF Guide](https://gitlab.iqrf.org/alliance/iot-starter-kit/tree/master/install/pdf/iqrf-part3c.pdf)** will be opened in a viewer mode. We strongly recommend downloading it and open on your computer locally to have hyperlinks functional and to be able to copy strings. The Download button you will find at the top of the page with a PDF preview.
In this part, you will:
......
......@@ -126,9 +126,9 @@ sudo systemctl disable iqrf-daemon
## Step 5B - Install IQRF Gateway Daemon
```bash
sudo apt-get install -y dirmngr
sudo apt-get install -y dirmngr apt-transport-https
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9C076FCC7AB8F2E43C2AB0E73241B9B7B4BD8F8E
echo "deb http://repos.iqrf.org/debian stretch stable" | sudo tee -a /etc/apt/sources.list.d/iqrf-gateway.list
echo "deb http://repos.iqrf.org/testing/debian stretch testing" | sudo tee -a /etc/apt/sources.list.d/iqrf-gateway.list
sudo apt-get update && sudo apt-get install -y iqrf-gateway-daemon
```
......@@ -141,13 +141,16 @@ systemctl status iqrf-gateway-daemon.service
## Step 6A - Install IQRF Gateway Daemon WebApp
```bash
sudo apt-get install -y iqrf-gateway-webapp
sudo apt-get -y install apt-transport-https lsb-release ca-certificates dirmngr
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys D93B0C12C8D04D7AAFBCFA27CCD91D6111A06851
sudo sh -c 'echo "deb https://repozytorium.mati75.eu/raspbian stretch-backports main contrib non-free" > /etc/apt/sources.list.d/php.list'
sudo apt-get update && sudo apt-get install -y iqrf-gateway-webapp
```
### Step 6B - Confirm IQRF Gateway Daemon WebApp is running
```bash
http://localhost/en
http://localhost/
```
![IQRF Gateway Daemon WebApp dashboard](../pics/iqrf-daemon-webapp.png "IQRF Gateway Daemon WebApp dashboard")
......@@ -156,7 +159,7 @@ http://localhost/en
## Step 7A - Configure IQRF SPI interface
```bash
http://your-rpi-ip/en/config/iqrf
http://localhost/config/iqrf-spi/
```
![Select spidev0.0 interface](../pics/iqrf-daemon-webapp-config-iqrf.png "Select spidev0.0 interface")
......@@ -166,7 +169,7 @@ http://your-rpi-ip/en/config/iqrf
### Step 7B - Restart IQRF Gateway Daemon
```bash
http://your-rpi-ip/en/service
http://localhost/service
```
![Restart IQRF Gateway Daemon](../pics/iqrf-daemon-webapp-service-restart.png "Restart IQRF Gateway Daemon")
......@@ -206,7 +209,7 @@ http://your-rpi-ip:1880
```bash
cd /home/pi
git clone https://gitlab.iqrf.org/open-source/iot-starter-kit.git
git clone https://gitlab.iqrf.org/alliance/iot-starter-kit.git
cd iot-starter-kit/install
cp rpi-board/node-red/* /home/pi/.node-red
pm2 restart node-red
......@@ -253,21 +256,21 @@ systemctl status pm2-pi
## Step 10A - Check Node-RED dashboard
```bash
http://your-rpi-ip:1880/ui
http://localhost:1880/ui
```
![IQRF Gateway App dashboard](../pics/node-red-ui.png "IQRF Gateway App Dashboard")
### Step 10B - Check Node-RED flow
```bash
http://your-rpi-ip:1880
http://localhost:1880
```
![IQRF Gateway App flow](../pics/node-red-flows.png "IQRF Gateway App Flow")
### Step 10C - Blink coordinator LEDR from IQRF Gateway Daemon WebApp
```bash
http://your-rpi-ip/en/iqrfnet/send-raw
http://localhost/iqrfnet/send-raw
```
![IQRF Send DPA packet](../pics/iqrf-daemon-webapp-pulse-ledr.png "IQRF Send DPA packet")
......
......@@ -91,9 +91,9 @@ sudo systemctl disable iqrf-daemon
## Step 5B - Install IQRF Gateway Daemon
```bash
sudo apt-get install -y dirmngr
sudo apt-get install -y dirmngr apt-transport-https
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 9C076FCC7AB8F2E43C2AB0E73241B9B7B4BD8F8E
echo "deb http://repos.iqrf.org/debian stretch stable" | sudo tee -a /etc/apt/sources.list.d/iqrf-gateway.list
echo "deb https://repos.iqrf.org/testing/debian stretch testing" | sudo tee -a /etc/apt/sources.list.d/iqrf-gateway.list
sudo apt-get update && sudo apt-get install -y iqrf-gateway-daemon
```
......@@ -106,13 +106,16 @@ systemctl status iqrf-gateway-daemon.service
## Step 6A - Install IQRF Gateway Daemon WebApp
```bash
sudo apt-get install -y iqrf-gateway-webapp
sudo apt-get -y install apt-transport-https lsb-release ca-certificates
sudo wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sudo sh -c 'echo "deb https://packages.sury.org/php/ stretch main" > /etc/apt/sources.list.d/php.list'
sudo apt-get update && sudo apt-get install -y iqrf-gateway-webapp
```
### Step 6B - Confirm IQRF Gateway Daemon WebApp is running
```bash
http://localhost/en
http://localhost/
```
![IQRF Gateway Daemon WebApp dashboard](../pics/iqrf-daemon-webapp.png "IQRF Gateway Daemon WebApp dashboard")
......@@ -121,7 +124,7 @@ http://localhost/en
## Step 7A - Configure IQRF SPI interface
```bash
http://localhost/en/config/iqrf
http://localhost/config/iqrf-spi/
```
![Select spidev2.0 interface](../pics/iqrf-daemon-webapp-config-iqrf.png "Select spidev2.0 interface")
......@@ -131,7 +134,7 @@ http://localhost/en/config/iqrf
### Step 7B - Restart IQRF Gateway Daemon
```bash
http://localhost/en/service
http://localhost/service
```
![Restart IQRF Gateway Daemon](../pics/iqrf-daemon-webapp-service-restart.png "Restart IQRF Gateway Daemon")
......@@ -141,7 +144,7 @@ http://localhost/en/service
```bash
cd /home/ubilinux
git clone https://gitlab.iqrf.org/open-source/iot-starter-kit.git
git clone https://gitlab.iqrf.org/alliance/iot-starter-kit.git
cd iot-starter-kit/install
sudo cp etc/lsb-release-debian /etc/lsb-release
sudo apt-get install curl
......@@ -235,7 +238,7 @@ http://localhost:1880
### Step 10C - Blink coordinator LEDR from IQRF Gateway Daemon WebAPP
```bash
http://localhost/en/iqrfnet/send-raw
http://localhost/iqrfnet/send-raw
```
![IQRF Send DPA packet](../pics/iqrf-daemon-webapp-pulse-ledr.png "IQRF Send DPA packet")
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment