Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Panel
panelIconId1f6e0
panelIcon:tools:
panelIconText🛠️
bgColor#F4F5F7

Please be patient with those steps, start up the gateway and actions with FTP can take a long time

Table of Contents
maxLevel3
minLevel1
maxLevelinclude3
outlinefalse
indent
exclude
styledefault
typelist
printablefalse
class

The FTP interface can be used for:

  • Updating the Software

  • Updating the configuration *

  • Support

NOTE: Multiples configuration's updates can be done simultaneously : (Thoses Those will be done in this order)

  1. License update

  2. Device update

  3. Output update

Warning

If the license's check is KO, the product will not start.

Setup FTP client

Connect to µWiotys using a FTP client (ex:filezilla)

...

Host: $UWIOTYS_IP_ADDRESS

: Filezilla)

  • Host: $IP_Address_µWiotys (by default: 192.168.1.100)

  • Port: 2222

  • Protocol: SFTP (SSH File Transfer Protocol)

Note

Warning the answer response time of µWiotys' FTP can be very a little bit long, especially on fixed IP.
If necessary, you should extend your FTP Client timeout to 60 seconds, see Application Example

Don’t forget to refresh in order to see your current files

Contact Wi6labs support team your seller for user/password

End device configuration

LoraWan LoRaWAN device provisioning on µWiotys can be done by FTP transfer.
First, create the configuration file with proper parameters and format then connect to µWiotys with FTP and copy the configuration file into the proper directory.

Take care of the LoRa Band used in the JSON when you add a sensor on a gateway not European (different from 868MHz)

Configuration file

File name

The name of the devices configuration file can be: devices_update.json or devices_update_XXXXXXXX.json

where “XXXXXXXX” is the hardware serial number of the board (8 digits, upper case), it can be found on the web interface in the Overview ⇒ Information menu.

...

Parameters for each device

Field

Mandatory

description

Possible value

uwiotys.state

yes

Required action
"add" to configure a new device
"delete" to remove a configured device
if set to "active", nothing will be done

"add"/"delete"/"active"

uwiotys.reference

yes

End device manufacturer reference

Manufacturer reference : see

list device

LoRaWAN Compatible Devices

uwiotys.output_protocols.modbus.@modbus

yes

Modbus slave ID

1 to 200

spn.activation_type

yes

End device activation type, only OTAA supported

"OTAA"

spn.dev_eui

yes

String of 16 hexadecimal characters

"70B3D5E75E008888"

spn.app_eui

yes

String of 16 hexadecimal characters

"70B3D5E75F600000"

spn.app_key

yes

String of 32 hexadecimal characters

"78FF2CDE6D2C657F09981C3332096DF9"

spn.dev_addr

no

For future use

spn.nwks_key

no

For future use

spn.apps_key

no

For future use

spn.end_device_parameters.rx_window

yes

End device rx windows

This parameters cannot be change

spn.end_device_parameters.rx_frequency

yes

End device rx frequency

This parameters cannot be change

spn.end_device_parameters.rx_datarate

yes

End device data rate

This parameters cannot be change

spn.end_device_parameters.class

yes

End device class

A or C

Configuration file will be rejected at first error, missing field or wrong parameters.

...

The file format should be as follow, several device can be listed in the sensors table.

Code Block
languagejson
{
  "sensors": [
    {
      "uwiotys": {
        "state": "add",
        "reference": "50-70-139",
        "output_protocols": {
          "modbus": {
            "@modbus": 1
          }
        }
      },
      "spn": {
        "activation_type": "OTAA",
        "dev_eui": "70B3D5E75E008D35",
        "app_eui": "70B3D5E75F600000",
        "app_key": "725070411F8720932F4A56B6117D0638",
        "dev_addr": "",
        "nwks_key": "",
        "apps_key": "",
        "end_device_parameters": {
          "rx_window": 3,
          "rx_frequency": 869525000,
          "rx_datarate": 0,
          "class": "A"
        }
      }
    },
    {
      "uwiotys": {
        "state": "add",
        "reference": "50-70-053",
        "output_protocols": {
          "modbus": {
            "@modbus": 2
          }
        }
      },
      "spn": {
        "activation_type": "OTAA",
        "dev_eui": "70B3D5E75E008888",
  },       "spnapp_eui": {"70B3D5E75F600000",
        "activationapp_typekey": "OTAA78FF2CDE6D2C657F09981C3332096DF9",
        "dev_euiaddr": "70B3D5E75E008888",
        "appnwks_euikey": "70B3D5E75F600000",
        "appapps_key": "78FF2CDE6D2C657F09981C3332096DF9",
        "devend_device_addrparameters": {
          "rx_window": 3,
          "nwksrx_keyfrequency": "", 869525000,
          "appsrx_keydatarate": ""0,
        "end_device_parameters  "class": {"A"
        }
      "rx_window": 3,}
    }
      "rx_frequency": 869525000,
          "rx_datarate": 0,
          "class": "A"
        }
      }
    }
  ]
}

Upload configuration

Upload the configuration file

...

]
}

Upload configuration

image-20240315-150109.pngImage Added

Upload the configuration file
  1. Copy the devices configuration file into the directory: /uwiotys/update_config/

  2. Create an empty file named "reboot" in directory "/update/". You can reboot with this method or with the reboot web interface button

Note

An electric reboot can corrupt the update process !

Info

Few milliseconds after, a "reboot_processed_ok" file will be created. You can log out of your GW and move on to the next step.

  1. After few minutes

    1. If the update failed, you will find information into the file: devices_updates_$DATE_ERROR.log

    2. If the update success, the the devices configuration file is deleted and you will find the file: devices_updates_$DATE_SUCCESS.log

  2. The devices current configuration of µWiotys is available in the directory: /uwiotys/

...

  1. current_config/

You need to reboot to process the device update, you can reboot the gateway by two ways:

  • With ftp :

    • Create a file named "reboot" in directory "/update/".

    • A file XXXXXXXX_reboot_processed_yy is created once command processed.

    • Command reboot is processed if XXXXXXXX_reboot_processed_yy does not exist and each time the command file is edited.

  • With Kerlink gateway button:

    • iFemToCell: Press the reset button located on the side of the gateway.

    • iStation: Press once (and only once) the On/Off button.

Warning: an electric reboot can corrupt the update process

After a few seconds the LEDs stop blinking, wait another minute then it's possible to reconnect to the FTP. The status file will created in: /uwiotys/update_config/

  • If the update failed, you will find information into the file: devices_updates_$DATE_ERROR.log

  • If the update success, the file the devices configuration file is deleted and you will find the file: devices_updates_$DATE_SUCCESS.log

Current configuration

...

The file format is the same as the devices configuration file, it can be used to remove device for µWiotys config by simply changing "state" from "active" to "remove" for one or several devices and then follow the regular update procedure.

Modify/Delete your fleet

If you want to modify or delete sensors that added on µWiotys, please, follow these steps:

  • Delete :

    • With configurator

      • In the configurator you can select the action to Add/Delete a sensor → image-20240726-140115.pngImage Added
        Don’t forget to write all informations that you noticed in the current config of your GW.
        When you generated the update file with deleted elements, push and reboot the GW like the process above.

    • In edit file directly

      • By retrieve the curent config file in /uwiotys/current_config/

...

      • Then Replace the field “state” by delete
        Don’t forget to write all informations that you noticed in the current config of your GW.
        You have to rename the update file with deleted elements (devices_update.json), push and reboot the GW like the process above.

  • Modify :

    • You have to Delete and Add again the update file to Modify a sensor (Modbus slave adress, reference…)

Output configuration

Configuration file

...

“XXXXXXXX” is the hardware serial number of the board (8 digits, upper case), it can be found on web interface in the Overview ⇒ Information menu.

Parameters

Field

Mandatory

description

Possible value

http_data_server.active

yes

activation

Activation status of the HTTP output, if activated all device data will be sent to HTTP server, if not no messages will be sent. This does impact modbus output

true / false

http_data_server.url

yes

url

Url of the external server, it must be accessible from the network of the GW

valid URL

http_data_server.headers

yes

header

Header information for the server

valid key / value list

csv.active

yes

activation

Activation status of the csv output, if activated all device data be stored in csv files. This does impact modbus output

true / false

csv.nb_week

yes

Number of week the csv files will be keep. Be careful not to keep the files too long so as not to saturate the storage space

[1:52]

mqtt.active

yes

activation

Activation status of the mqtt output

. This does impact modbus output

true / false

mqtt.host

yes

External Mqtt Broker

valid host

...

.

true / false

mqtt.host

yes

External Mqtt Broker

valid host

mqtt.topic

no

The topic to subscribe from the MQTT broker. By default the topic is #/DEVEUI
(ex: if you enter “/MyTopic/uwiotys”, the data will be published to the topic “/MyTopic/uwiotys/DEVEUI”)

valid topic

HTTP output support both HTTP and HTTPS protocols.

MQTT output support both MQTT and MQTTS protocols.

Panel
panelIconIdatlassian-warning
panelIcon:warning:
bgColor#DEEBFF

IN both cases, auto signed certificate are not

...

supported.

File format

The file format should be as follow.the following examples:

Exemple 1
Code Block
languagejson
{
  "http_data_server": {
    "active": true,
    "url": "https://webhook.site/102211e8-f30f-4117-82fa-999e1fd47caa",
    "headers": {}
  },
  "csv":{
    "active": true,
    "nb_week": 15
  },
  "mqtt":{
    "active": true,
    "host": "mqtt.uWiotys.io",
    "port": 1883,
    "topic": "MyTopic",
    "login": "",
    "password": "",
    "secure(TLS)": false
  }
}
Exemple 2
Code Block
languagejson
{
  "http_data_server": {
    "active": false,
    "url": "http://MyHTTPServer:8080",
    "headers": {
      "Content-Type": "application/x-www-form-urlencoded",
      "Authorization": "Bearer eyJhbGciOiJSUzI1NiIsInR5cCIgOiAiSldUIiwia2lkIiA6ICJBTDBERmROLW1DNFpMTFJCVXh4OFdxN1RNZTVmQ3NNSE1FV1FsUklNYmRjIn"
    }
  },
  "csv":{
    "active": true,
    "nb_week": 15
  },
  ,
  "mqtt":{
    "active": true,
    "host": "mqtt.uWiotys.io",
  },
 "port": 8883,

   "topicmqtt": "MyTopic",{
    "loginactive": "MyLogin"true,
    "passwordhost": "MyPassmqtt.uWiotys.io",
    "secure(TLS)port": true8883,
  } }

Upload configuration

Upload the configuration file

Once connected to FTP server, copy the output configuration file into the directory: /uwiotys/update_config/

You need to reboot to process the device update, you can reboot the gateway by two ways:

  • With ftp :

    • Create a file named "reboot" in directory "/update/".

    • A file XXXXXXXX_reboot_processed_yy is created once command processed.

    • Command reboot is processed if XXXXXXXX_reboot_processed_yy does not exist and each time the command file is edited.

  • With Kerlink gateway button:

    • iFemToCell: Press the reset button located on the side of the gateway.

    • iStation: Press once (and only once) the On/Off button.

...

 "topic": "MyTopic",
    "login": "MyLogin",
    "password": "MyPass",
    "secure(TLS)": true
  }
}

Upload configuration

The new output configuration of µWiotys should be upload to the directory: /uwiotys/update_config/

...

Upload the configuration file

See the process to add sensors for more details

Note

An electric reboot can corrupt the update process

To test the HTTP configuration, µwiotys will send a test request with information about the Gateway (EUI, IP and MAC) and wait for a 200 OK response.

Code Block
languagejson
{
    "EUI": "7076FF0056050190",
    "IP": "192.168.100.143",
    "MAC": "70:76:ff:03:02:e1"
}

After a few seconds the LEDs stop blinking, wait another minute then reconnect you to the FTP. The status of the output configuration update can be found in /uwiotys/log/uwiotys_functionnal.log

Current configuration

The output current configuration of µWiotys is available in the directory: /uwiotys/current_config/

License Configuration

Configuration file

Where to get the license

See with Wi6labs if not already provided with the product.

File name

The license's file's name look like : license_XXXXXXXX.json. With "XXXXXXXX" as the hardware serial number.

Upload configuration

Upload the license

To give or update a license, the license's file has to be put in the following folder using FTP : /uwiotys/update_config/
After that step, a reboot is needed to take this license into account. You can reboot by two ways:

  • With ftp :

    • Create a file named "reboot" in directory "/update/".

    • A file XXXXXXXX_reboot_processed_yy is created once command processed.

    • Command reboot is processed if XXXXXXXX_reboot_processed_yy does not exist and each time the command file is edited.

  • With Kerlink gateway button:

    • iFemToCell: Press the reset button located on the side of the gateway.

    • iStation: Press once (and only once) the On/Off button.

See How to know if the product has a license to know if the license is correctly added.

...

ff:03:02:e1"
}

After a few seconds the LEDs stop blinking, wait another minute then reconnect you to the FTP. The status of the output configuration update can be found in /uwiotys/log/uwiotys_functionnal.log

Current configuration

The output current configuration of µWiotys is available in the directory: /uwiotys/current_config/

License Configuration

Configuration file

Where to get the license

See with Wi6labs if not already provided with the product.

File name

The license's file's name look like : license_XXXXXXXX.json. With "XXXXXXXX" as the hardware serial number.

Upload configuration

Upload the license

Same process than before, see Upload configuration and replace with the license_XXXXXXXX.json

Info

You can find the information in the file : uwiotys/log/uwiotys_functional.log.

How to know if the product has a license

Logs can be :

  • "No license found, µWiotys will not start. Please configure a valid license for your µWiotys gateway XXXXXXXX" when NO license is present.

  • "The license is VALID. µWiotys will start." when the product have HAS a license.

How to know the license's type and state

...

Logs can contain :

  • "Check license success. license type SIMPLE - C license in use, out of M [

    Status
    colourGreen
    titlecurrent
    ] license in use, out of [
    Status
    colourRed
    titleMAX
    ] license." for the SIMPLE license.

  • "Check license success. license type: LISTED : L[

    Status
    colourPurple
    titletYPE
    ] " for the LISTED license.

...

Where

Status
colourGreen
titlecurrent
is the currently used number of sensors, M as the maximum possible sensors' number.
And L as
Status
colourRed
titleMAX
is the maximum possible sensors' number.
And
Status
colourPurple
titletYPE
is the list of authorized references.

How to know what outputs can be used with the current license

...

license

...

Logs contain :

Code Block
languagecpp
License allow user to activate the following output:
Modbus output:  true/false
Csv output:     true/false
Http output:    true/false
Mqtt output:    true/false
Bacnet output:    true/false

Software Update

It is possible to update the installation of µwiotys to benefit from recent evolutions.

...

  1. Replace the XXXXXXX of the provided file : XXXXXXXX_data.json to be the 8 lasts digits of µwiotys' EUI.

  2. Push the renammed renamed file to the configuration folder.

  3. Check that a file (XXXXXXXX_set_configuration_processed_ok) is created in the configuration folder. (TIPS: Don't forget to refresh, if the file isn't created please reboot the GW and restart from step 1)

  4. Push the file : uwiotys-update_1.3.0_klkgw.ipk to the update folder.

  5. Push the update file to the update folder.

  6. Check that a file (XXXXXXXX_update_processed_ok) is created in the update folder. (TIPS: Don't forget to refresh)

  7. Push the reboot file to the update folder.

  8. Check that a file (XXXXXXXX_reboot_processed_yy) is created in the update folder. (TIPS: Don't forget to refresh)

  9. Wait. (Take arround around 5 minutes to complete)

  10. If everything is ok, you must find in uwiotys/devices_current_config the following file : devices_date-time.json

...

  1. Push the file : uwiotys-update_2.x.x.xxxx.ipk to the update folder.

  2. Push the update file to the update folder.

  3. Check that a file (XXXXXXXX_update_processed_ok) is created in the update folder. (TIPS: Don't forget to refresh, if the file isn't created please reboot the GW and restart from step 1)

  4. Push the reboot file to the update folder.

  5. Check that a file (XXXXXXXX_reboot_processed_yy) is created in the update folder. (TIPS: Don't forget to refresh)

  6. Wait. (Take arround around 5 minutes to complete)

  7. Push the license to µwiotys, see how to in : Upload the license chapter.

  8. If everything is ok, you must find in the last part of uwiotys/log/uwiotys_functional.log the following line : The license is VALID. µWiotys will start.

From 2.x to 2.x and 3.x to 3.x

Warning upgration upgrade from 2.x to 3.x is not supported !

  1. Push the file : uwiotys-update_2.x.x.xxxx.ipk to the update folder.

  2. Push the update file to the update folder.

  3. Check that a file (XXXXXXXX_update_processed_ok) is created in the update folder. (TIPS: Don't forget to refresh, if the file isn't created please reboot the GW and restart from step 1)

  4. Push the reboot file to the update folder.

  5. Check that a file (XXXXXXXX_reboot_processed_yy) is created in the update folder. (TIPS: Don't forget to refresh)

  6. Wait. (Take arround around 5 minutes to complete)

  7. If everything is ok, you must find in the last part of uwiotys/log/uwiotys_functional.log the following line : The license is VALID. µWiotys will start.

...