-
Notifications
You must be signed in to change notification settings - Fork 18
Setup Guide
Home > Setup Guide
This Setup Guide provides guidance on system requirements, installation and configuration of Floranet.
Note Floranet is supported on MacOS 10.13 and Ubuntu Linux 16.04. Other operating systems may be used, provided the prerequisite software is available and configured.
Floranet requires the following prerequisites:
- PostgreSQL 9.3+
- Python 2.7
- Libpq-dev
Install the following software components.
PostgreSQL
Review the PostgreSQL MacOS packages and choose an installation method or project. Once installed, create a user and a database for Floranet using the psql command line tool.
Create a user 'floranet' with password 'florapass'.
$ psql postgres
# CREATE ROLE floranet WITH LOGIN PASSWORD 'florapass';
Then create a database 'floranet' and grant the user created above full access.
# CREATE DATABASE floranet;
# GRANT ALL PRIVILEGES ON DATABASE floranet TO floranet;
Python 2.7
Python 2.7.10 is installed by default on MacOS.
Libpq-dev
Libpq-dev is a requirement for the psycopg2 PostgreSQL driver used by Floranet. It provides development header files for the offical PostgreSQL libpq client library. The package can be installed using Homebrew.
$ brew install libpq-dev
Install the following software components.
Postgres
To install PostgreSQL:
$ sudo apt install postgresql
Once installed, create a user and a database for Floranet using the psql command line tool.
Create a user 'floranet' with password 'florapass'.
$ sudo -u postgres psql template1
# CREATE ROLE floranet WITH LOGIN PASSWORD 'florapass';
Then create a database 'floranet' and grant the user created above full access.
# CREATE DATABASE floranet;
# GRANT ALL PRIVILEGES ON DATABASE floranet TO floranet;
Python Ubuntu 16.04 comes by default with Python 3.5.1 installed. Python 2 can be installed as follows.
$ sudo apt install python
Libpq-dev
Libpq-dev is a requirement for the psycopg2 Postgres driver used by Floranet. It provides development header files for the offical Postgres libpq client library. Install this package using apt.
$ sudo apt install libpq-dev
Clone the repository:
$ git clone https://github.com/Fluent-networks/floranet.git
Run setup.py to install to the system, or in your virtual environment:
$ sudo python setup.py install
To create the required database tables, first edit the file config/database.cfg
. This file is read by the alembic migration tool to obtain the PostgreSQL host, database, username and password parameters. The file below shows an example with the parameters as per the Prerequisites section above.
# Database connection parameters
[database]
host = localhost
user = postgres
password = florapass
database = floranet
To run the migration, change to the floranet/data
directory and run the migration.
$ cd floranet/data
$ alembic upgrade head
The command line for starting floranet is:
$ floranet -c [config] -f -l [logfile] -d
The parameters are:
-
-c [config]
: Use database configuration file config. If omitted, the defaultdatabase.cfg
will be used. -
-f
: Log in foreground to stdout. If this is set, the log file parameter is ignored. -
-l [logfile]
: Log to logfile. By default, floranet will log to/tmp/floranet.log
. -
-d
: Enable debug mode. The log will include detailed debug information.
The first time that floranet is started, it will create a factory default configuration. The defaults used are described in the configuration section below. The example log output below shows this process.
$ floranet -c database.cfg -f
2017-10-14T15:27:12+1000 [Floranet#info] Starting up
2017-10-14T15:27:12+1000 [Floranet#info] Reading database configuration from database.cfg
2017-10-14T15:27:12+1000 [Floranet#info] No system configuration found. Loading factory defaults
2017-10-14T15:27:12+1000 [Floranet#info] Initialising the server
2017-10-14T15:27:12+1000 [Floranet#info] Starting the server
2017-10-14T15:27:12+1000 [Floranet#info] Starting the web server
2017-10-14T15:27:12+1000 [-] Site starting on 8000
2017-10-14T15:27:12+1000 [twisted.web.server.Site#info] Starting factory <twisted.web.server.Site instance at 0x109deb200>
2017-10-14T15:27:12+1000 [Floranet#info] Starting the LoRaWAN interface
2017-10-14T15:27:12+1000 [-] LoraWAN starting on 1700
2017-10-14T15:27:12+1000 [-] Starting protocol <floranet.lora.wan.LoraWAN instance at 0x109dee248>
Floranet provides you with the ability to configure the logical representations of associated LoRaWAN IoT elements, including devices, gateways, applications and application interfaces. For more information about LoRa technology, refer to the LoRaWAN Overview.
Floranet is configured using a command-line tool called floracmd. floracmd allows you to configure all aspects of the server, the connected LoRa networks, and upstream application server interfaces. floracmd uses a set of CLI commands to communicate to a Floranet server via the server's REST management interface.
To start floracmd:
$ floracmd -s [server:port] -t [token] [command]
The parameters are:
-
-s [server]
: Connect to the floranet server listening at server:port. If omitted, the defaultlocalhost:8000
will be used. -
-t [token]
: Set the security token to token for authenticated access to the server. -
[command]
: Command to be issued to the server.
Note:
- The server parameter can be specified using the environment variable FLORANET_SERVER. This will be used if the
-s
option is not specified. - The token parameter can be specified using the environment variable FLORANET_TOKEN. This will be used if the
-t
option is not specified. - If a command is not specified on the command line, floracmd will drop into an interactive shell, allowing multiple commands to be issued.
For example, to start the floracmd interactive shell, connecting to a server running at localhost:8000 and using the server default token, issue the following commands.
$ export FLORANET_TOKEN="IMxHj@wfNkym@*+V85Rs^G<QXMD~p[eaX3S=_D8f7{z0q{GN"
$ floracmd
Using floranet server localhost:8000
floranet>
For the remainder of this guide, we will assume configuration commands are issued from the interactive shell, as indicated by the floranet>
prompt.
At the prompt, help is available for each command by issuing the help command.
floranet> help
Documented commands (type help <topic>):
========================================
app device gateway interface property system
Undocumented commands:
======================
exit help quit
floranet> help system
Usage: system [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
set set system configuration parameters.
show show the system configuration.
floranet>
The system command displays and modifies the current server configuration. Assuming the default configuration is loaded, we can view the configuration using system show:
floranet> system show
System: floranet at localhost:8000
Network interface: 0.0.0.0
LoraWAN port: 1700
Web server port: 8000
Frequency band: US915
Network ID: 0x01.02.03
OTAA Address Range: 0x0600.0001 - 0x060f.ffff
ADR enabled: Yes
ADR margin: 0.0 dB
ADR cycle time: 9000 s
ADR message time: 10 s
Relaxed frame count: Yes
MAC queueing: Yes
MAC queue limit: 120 s
floranet>
The available system parameters are listed in the table below.
Parameter | Value | Description | Comment |
---|---|---|---|
name | Alphanumeric string | A name used to identify the server. | Default is floranet |
listen | IP address | The interfaces the server will listen on for LoRa messages. | To listen on all available interfaces, use 0.0.0.0. This is the default. |
port | Integer 0 to 65535 | The LoRaWAN UDP port for messages from gateways. | Default is 1700 |
webport | Integer 0 to 65535 | The port that the built-in web server will listen on for REST requests. | Default is 8000. Note if this port is changed, you need to restart floracmd with the new setting. |
apitoken | Alphanumeric string | The API token used to authenticate floracmd to the server. | Note if this is changed, you need to restart floracmd with the new token string. |
freqband | US915 | AU915 | EU868 | The LoRa frequency band being used. | Floranet currently supports the US (US915), Australian (AU915) and European (EU868) bands. Default is US915 |
netid | 3 octet hex nnnnnn (n = 0 to f) | Identifies a LoRa network. Note that the 7 LSB of the NetID must match the 7 MSB of devices' devaddr. | Default is 010203 (Local: Experimental nodes). |
duplicateperiod | Integer 0 to 60 | The time in seconds that the server will cache messages in order to remove duplicates received from different gateways. | Default is 10 seconds. To disable de-duplication, set to 0. |
fcrelaxed | yes | no | Whether the server will accept a reset of a device's frame count to zero. | Caters for devices that restart and cannot persistently store their previous frame count value. Default is yes |
otaastart | 4 octet devaddr hex nnnn.nnnn (n = 0 to f) | The starting address of the OTAA range. OTAA devices will receive a device address from within the defined start - end range. | Default is 0600.0001 |
otaaend | 4 octet devaddr hex nnnn.nnnn (n = 0 to f) | The final address of the OTAA range. OTAA devices will receive a device address from within the defined start - end range. | Default is 060f.ffff |
macqueueing | yes | no | MAC message queuing. If enabled, downstream MAC addresses will be queued and piggybacked onto the next downstream message. | Default is yes |
macqueuelimit | Integer 60 to 86400 | The time in seconds that the server will queue MAC messages. | Default is 120 seconds. |
Examples
Example system configuration commands.
- Set the LoRa frequency band to the Australian 915 MHz band.
floranet> system set freqband=AU915
- Set the network ID to 0x010218
floranet> system set netid=010218
- Set the OTAA start and end addresses to match the netid above.
floranet> system set otaastart=0c00.0001 otaaend=0c0f.ffff
- Turn macqueuing on, and set the queue to ten minutes.
floranet> system set macqueueing=yes macqueuelimit=600
- Show the system configuration.
floranet> system show
System: floranet at localhost:8000
Network interface: 0.0.0.0
LoraWAN port: 1700
Web server port: 8000
Frequency band: AU915
Network ID: 0x01.02.18
OTAA Address Range: 0x0c00.0001 - 0x0c0f.ffff
ADR enabled: Yes
ADR margin: 0.0 dB
ADR cycle time: 9000 s
ADR message time: 10 s
Relaxed frame count: Yes
MAC queueing: Yes
MAC queue limit: 600 s
floranet>
Applications represent groupings of devices that are associated with an upstream application server, and share a common security context for joining the LoRaWAN network. Applications are uniquely identified within a network server by an AppEUI parameter, and devices associated with that application must have prior knowledge of parameters required for authentication and message transfer.
Floranet associates devices with applications using the AppEUI, and implements a concept known as application interfaces, as a property of an application, to define how messages are exchanged with an upstream application server. Note that multiple applications may be associated with a single application interface.
To add, modify, display and delete applications, use the app command, with the appeui parameter as the first argument.
Application parameters are listed in the table below.
Parameter | Values | Description | Comment |
---|---|---|---|
appeui | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Unique application identifier. | |
name | Alphanumeric string | The name used to identify an application. | |
domain | Alphanumeric string | Identifies an autonomous system domain, e.g. to associate an application with a customer. | Optional. |
appkey | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Secret key used for encryption. | |
appnonce | 3 octet hex nnnnnn (n = 0 to f) | Nonce used for join requests. | Random number. |
fport | Integer 1 to 223 | Default LoraWAN port used for messages. | |
appinterface_id | Integer | Identifies the Application interface associated with this application | See Application Interfaces below. |
Examples
Example application configuration commands.
- Create a new application.
floranet> app add 0a0a.0b0b.0c0c.0d0d name=Test appkey=0937.c721.8c66.0b42 appnonce=ac03f2 fport=15
- Show all applications.
floranet> app show all
Application AppEUI Domain Fport Interface
Test 0a0a.0b0b.0c0c.0d0d - 22 -
Test 0a0b.0c0d.0a0b.0c0d fluentnetworks 15 1
- Show the newly created application.
Application EUI: 0a0a.0b0b.0c0c.0d0d
name: Test
domain: -
fport: 15
interface: -
- Modify the fport parameter, then show the application.
floranet> app set 0a0a.0b0b.0c0c.0d0d fport=22
floranet> app show 0a0a.0b0b.0c0c.0d0d
Application EUI: 0a0a.0b0b.0c0c.0d0d
name: Test
domain: -
fport: 22
interface: -
- Delete the application 0a0b.0c0d.0a0b.0c0d.
floranet> app delete 0a0b.0c0d.0a0b.0c0d
Error: Cannot delete - devices exist with Application EUI 0a0b.0c0d.0a0b.0c0d
Note that floranet will not permit applications to be deleted if there are devices associated with the application. Let's try deleting 0a0a.0b0b.0c0c.0d0d.
floranet> app delete 0a0a.0b0b.0c0c.0d0d
Floranet uses the concept of Application Interfaces in order to define how application data is exchanged between devices and an upstream application server. Application Interfaces (or interfaces for short) provide a proxy function between LoRaWAN networks and upstream IoT application server platforms.
The interface command is used to create, display, modify and delete application interfaces.
To assign an interface to an application, use the app set command with an interface=[id] command.
Currently, Floranet supports two types of application interfaces:
- Reflector: A generic application interface that is only useful for testing purposes. This interface simply takes data received form a device, and sends it back to that device.
- Azure: Used to communicate with Microsoft's Azure IoT platform. Currently, Floranet only supports the Azure HTTPS protocol to send time-series telemetry and alerts from devices, and to receive Azure IoT cloud-to-device messages.
The parameters associated with these application interfaces are shown below.
Parameter | Values | Description | Comment |
---|---|---|---|
id | Integer | Uniquely identifies the interface | |
type | Reflector | Identifies the interface type | |
name | Alphanumeric string | Interface name |
Parameter | Values | Description | Comment |
---|---|---|---|
id | Integer | Uniquely identifies the interface | |
type | Azure | Identifies the interface type | |
name | Alphanumeric string | Interface name | |
protocol | HTTPS | Protocol used for the interface | Only HTTPS is supported. |
iothost | Alphanumeric string | Azure IoT hub host name. | Typically iothubname.azure-devices.net where iothubname is the IoT Hub's name property. |
keyname | Alphanumeric string | Azure IoT shared access policy name | Defined by the IoT Hub's shared access policy |
keyvalue | Alphanumeric string | Azure IoT shared access policy primary key | Defined by the IoT Hub's shared access policy |
pollinterval | Integer 1 to 65536 | Azure IoT HTTPS polling interval | For the HTTPS protocol, Azure IoT Hub requires us to poll for cloud-to-device messages. Under current guidelines, each device should poll for messages every 25 minutes or more. |
Examples
- Create a new Reflector application interface and show all interfaces.
floranet> interface add reflector name="Test Interface"
floranet> interface show all
ID Name Type
1 Test Interface Reflector
- Assign the new interface to an application.
floranet> app set 0a0b.0c0d.0a0b.0c0d interface=1
floranet> app show 0a0b.0c0d.0a0b.0c0d
Application EUI: 0a0b.0c0d.0a0b.0c0d
name: Test
domain: fluentnetworks.com.au
fport: 15
interface: 1
Properties:
- Create a new Azure interface.
floranet> interface add azure name="Azure IoT Hub" protocol=https iothost=test-azure022.azure-devices.net keyname=iothubowner keyvalue='oCk9sf4lCgqCQ1nMMk22HYDU6vVc5wgipQfXK9u7STc8=' pollinterval=25
floranet> interface show all
ID Name Type
1 Test Interface Reflector
2 Azure IoT Hub Azure HTTPS
- Show the new interface details.
floranet> interface show 2
name: Azure IoT Hub
protocol: HTTPS
key name: iothubowner
key value: oCk9sf4lCgqCQ1nMMk22HYDU6vVc5wgipQfXK9u7STc8=
Polling interval: 25 minutes
status: Started
- Assign this interface to our application.
floranet> app set 0a0b.0c0d.0a0b.0c0d interface=2
floranet> app show 0a0b.0c0d.0a0b.0c0d
Application EUI: 0a0b.0c0d.0a0b.0c0d
name: Test
domain: fluentnetworks.com.au
fport: 15
interface: 2
Properties:
Application properties are an optional feature that assists devices in efficiently sending data to upstream application servers. Application properties use LoRaWAN ports to mark message data as a particular data type, enabling the data to be translated to an upstream application server data format. This optimises LoRaWAN constrained message payloads.
An example serves to illustrate the use of application properties. Assume we have devices that are required to transmit a temperature measurement to an Azure IoT Hub application. An example Azure device-to-cloud JSON encoded message payload message might look like:
{ ""deviceID": "azuredevice01", Temperature": 42.4620 }
Assuming the device is operating in the US915 LoRaWAN band at DR0, the maximum LoRaWAN MAC message payload length is 11 bytes, and the message above cannot be accommodated via a single uplink message.
An application property has the following parameters.
Parameter | Values | Description | Comment |
---|---|---|---|
port | 1 to 223 | LoRaWAN port | |
name | Alphanumeric string | Property name | |
type | Alphanumeric string | Data type | Allowable data types are defined by Python's struct standard library module. |
In the example above, we can define an application property using port 21 with a name of Temperature and data type float. In this case, the device sends a 4-byte binary value on LoRaWAN port 21, and Floranet reformats the message to be sent upstream.
To add, modify and delete application properties, use the property command, with the application's appeui parameter as the first argument.
Examples
- Add a new float data type property called Temperature using port 21.
floranet> property add 0a0b.0c0d.0a0b.0c0d name=Temperature type=float port=21
- Add a new integer data type property called Serial using port 22.
floranet> property add 0a0b.0c0d.0a0b.0c0d name=Serial type=int port=22
- Show the application and verify the properties are added.
floranet> app show 0a0b.0c0d.0a0b.0c0d
Application EUI: 0a0b.0c0d.0a0b.0c0d
name: Test
domain: fluentnetworks.com.au
fport: 15
interface: 2
Properties:
21 Temperature:float
22 Serial:int
As outlined in the LoRaWAN Overview, gateways provide the interface between a LoRa wireless network and the IP internetwork. Each gateway sends messages from devices to the network server(s), and delivers messages sent from a network server to connected devices.
By policy, Floranet will discard messages from a gateway unless it has been explicitly registered in the server's configuration. If a gateway is sending messages to Floranet, but has not been added, you will see log messages similar to the following:
2017-10-15T09:45:27+1000 [Floranet#error] Gateway message from unknown gateway 192.168.1.125
To add, modify and delete application properties, use the gateway command, with the gateway's IP address as the first argument.
Gateway parameters are listed in the table below.
Parameter | Values | Description | Comment |
---|---|---|---|
address | IP address | The IP address of the gateway. | This must be a unique, fixed address and able to receive UDP messages from the server on the required ports. |
name | Alphanumeric string | Name to identify the gateway. | |
eui | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Gateway identifier. | |
power | Integer 0 to 30 | Power in dBm used for downstream messages transmitted by this gateway. | |
enabled | yes or no | Enables or disables the gateway. |
Examples
- Add a gateway with address 192.168.1.125 and EUI 0080.0000.b1af.0000.
floranet> gateway add 192.168.1.125 eui=0080.0000.b1af.0000 power=26 enabled=yes name="test"
- Change the gateway's power output to 20 dBm.
floranet> gateway modify 192.168.1.125 power=20
- Remove the gateway.
floranet> gateway delete 192.168.1.125
Devices are IoT endpoints that send and receive LoRa messages over a LoRaWAN network to a network server. Some messages are processed internally by the network server (e.g. authentication messages), and some are forwarded upstream to an application server.
By policy, Floranet will ignore messages from a device unless it has been explicitly registered with the server's configuration, and is enabled. If a device is sending messages to Floranet, but has not been added, you will see log messages similar to the following:
2017-10-15T10:36:45+1000 [Floranet#info] Message from unregistered device 0f0e.0e0d.0001.0203
To add, modify and delete application properties, use the device command, with the device's deveui parameter as the first argument.
Device parameters are listed in the table below. Note that the required parameters are different, depending on whether the device is activated by personalisation (ABP) or over the air (OTAA). ABP devices require additional devaddr, nwkskey and appskey parameters.
Parameter | Values | Description | Comment |
---|---|---|---|
deveui | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Unique device identifier. | |
name | Alphanumeric string | Name to identify the device. | |
class | A or C | LoRaWAN device class. | Class B is not supported. |
appeui | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | The associated application EUI. | |
otaa | yes or no | If yes, device is OTAA. If no, device is ABP. | |
enabled | yes or no | Enables or disables the device. | |
devaddr | 4 octet hex nnnn.nnnn (n = 0 to f) | Network devaddr. | Required for ABP devices. |
appskey | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Application secret key. | Required for ABP devices. |
nwkskey | 8 octet hex nnnn.nnnn.nnnn.nnnn (n = 0 to f) | Network secret key. | Required for ABP devices. |
appname | Alphanumeric string | An alternative name that identifies this device to the upstream application server. | Optional. |
latitude | Floating point number | Device latitude in degrees (positive for N and E, negative for S and W) | Optional |
longitude | Floating point number | Device longitude in degrees (positive for N and E, negative for S and W) | Optional |
Note that if a device is activated over-the-air (OTAA), the devaddr that is assigned is defined by the server's OTAA address range, as discussed in the System configuration section above. If the device is activated by personalisation, it must be assigned a fixed devaddr, compliant with the server's netid parameter, as well as appskey and nwkskey secret keys.
Examples
In the examples below, the system configuration is:
Parameter | Value |
---|---|
Netid | 010203 |
OTAA range | 0600.0001 - 0x060f.ffff |
Application EUI | 0a0b.0c0d.0a0b.0c0d |
- Add a ABP device, Class C. deveui is 0f0e.0e0d.0000.0003, assign devaddr 0600.0002.
floranet> device add 0f0e.0e0d.0000.0003 name=abp_device_01 class=C otaa=no appeui=0a0b.0c0d.0a0b.0c0d devaddr=0600.0002 appskey=85b0.10b6.51c8.34d3.65a2.8622.80c2.7761 nwkskey=9e58.3c0b.4b64.789a.882a.671f.9bc6.220c enabled=yes
Error: Device devaddr 0600.0002 is within configured OTAA address range
Note we have attempted to assign the device's devaddr within the OTAA range. Let's change the address to be outside the range.
floranet> device add 0f0e.0e0d.0000.0003 name=abp_device_01 class=C otaa=no appeui=0a0b.0c0d.0a0b.0c0d devaddr=0610.0002 appskey=85b0.10b6.51c8.34d3.65a2.8622.80c2.7761 nwkskey=9e58.3c0b.4b64.789a.882a.671f.9bc6.220c enabled=yes
floranet> device show 0f0e.0e0d.0000.0003
Device EUI: 0f0e.0e0d.0000.0003
device address 0610.0002 nwkID 0x3 enabled
name: abp_device_01
application EUI: 0a0b.0c0d.0a0b.0c0d
activation: Personalization (ABP)
appname: N/A
latitude: N/A
longitude: N/A
appskey: 85b0.10b6.51c8.34d3.65a2.8622.80c2.7761
nwkskey: 9e58.3c0b.4b64.789a.882a.671f.9bc6.220c
data rate: N/A
average SNR: N/A
- Set the device's latitude and longitude
floranet> device set 0f0e.0e0d.0000.0003 latitude=-33.856159 longitude=151.215256
floranet> device show 0f0e.0e0d.0000.0003
Device EUI: 0f0e.0e0d.0000.0003
device address 0610.0002 nwkID 0x3 enabled
name: abp_device_01
class: C
application EUI: 0a0b.0c0d.0a0b.0c0d
activation: Personalization (ABP)
appname: N/A
latitude: -33.8562
longitude: 151.2153
appskey: 85b0.10b6.51c8.34d3
nwkskey: 9e58.3c0b.4b64.789a
data rate: N/A
average SNR: N/A
- Add an OTAA device, Class A. deveui is 0f0e.0e0d.0000.1234, with an appname deviceId001.
floranet> device add 0f0e.0e0d.0000.1234 name=otaa_device_22 class=A otaa=yes appeui=0a0b.0c0d.0a0b.0c0d appname=deviceId001 enabled=yes
floranet> device show 0f0e.0e0d.0000.1234
Device EUI: 0f0e.0e0d.0000.1234
device address 0000.0000 nwkID 0x0 enabled
name: otaa_device_22
class: A
application EUI: 0a0b.0c0d.0a0b.0c0d
activation: Over the air (OTAA)
appname: N/A
latitude: N/A
longitude: N/A
data rate: N/A
average SNR: N/A
Note that this device's devaddr is currently zero, indicating it has not yet joined the network. Once a OTAA device has joined, it is assigned an address and the data rate and SNR values are shown.
floranet> device show 0f0e.0e0d.0001.0203
Device EUI: 0f0e.0e0d.0001.0203
device address 0600.0001 nwkID 0x3 enabled
name: ota_device_1
class: A
application EUI: 0a0b.0c0d.0a0b.0c0d
activation: Over the air (OTAA)
appname: N/A
latitude: N/A
longitude: N/A
data rate: SF10BW125
average SNR: 9.17 dBm
When a device configured for OTAA joins, the log message will look similar to that shown below.
2017-10-15T11:48:04+1000 [Floranet#info] Successful Join request from DevEUI 0f0e.0e0d.0001.0203 for AppEUI 0a0b.0c0d.0a0b.0c0d | Assigned address 0600.0001
2017-10-15T11:48:04+1000 [Floranet#info] Sending join response for devaddr 0600.0001
If the device is using ADR, in time the network server will request an adjustment to its data rate, assuming the received SNR allows.
floranet> device show 0f0e.0e0d.0001.0203
Device EUI: 0f0e.0e0d.0001.0203
device address 0600.0001 nwkID 0x3 enabled
name: ota_device_1
application EUI: 0a0b.0c0d.0a0b.0c0d
activation: Over the air (OTAA)
appname: N/A
latitude: N/A
longitude: N/A
data rate: SF7BW125
average SNR: 9.67 dBm
- Show all devices. Provides a summary of all devices configured on the server.
floranet> device show all
Device DeviceEUI DevAddr Enabled Act Average-SNR
abp_device_01 0f0e.0e0d.0000.0003 0610.0002 Yes ABP N/A
abp_device_2 0f0e.0e0d.0000.0002 0610.0001 Yes ABP N/A
abp_device_1 0f0e.0e0d.0000.0001 0610.0000 Yes ABP N/A
otaa_device_22 0f0e.0e0d.0000.1234 0000.0000 Yes OTA N/A
ota_device_1 0f0e.0e0d.0001.0203 0600.0001 Yes OTA 9.72 dBm
Copyright © Fluent Networks, 2017.