Infrastructure Setup

From this section of Huxon, you have the possibility to specify the physical infrastructure of your system. These steps are necessary to register your infrastructure inside Huxon, so that all development and deployment operations can be performed without accessing the physical hardware. Huxon differentiate three categories of nodes that can be registered using the menu on the upper part of the screen:

infrastructure setup buttons
  1. cloud: virtual machines deployed inside Azure cloud

  2. local: edge nodes that handle connection from sensor devices. Work as gateways and are able to perform part of the computation locally.

  3. sensor: are equipped with sensors and run a RTOS. They connect to the respective father local node and are able to perform computation locally.

For each node creation, the status of the device will transition between three status:

  1. preparing: Huxon is creating its internal resources and interfacing to your cloud resources to handle the device;

  2. wait first connection: resources are ready and Huxon is waiting for the device to connect for the first time to Huxon.

  3. ready: device is ready to be used inside Huxon. From this moment on, all the operations on this devices are handled inside Huxon.

Local nodes setup

Local nodes can be created using the specific button on the upper part of the page.

local node setup

You are requested to specify a device name - from which Huxon automatically generates a Device Id - and a hostname that is required to the children of the local node to identify it. Finally, you need to specify the Local node type among the supported ones.

Note

The hostname of the Local node is very important, as it allows all the Local node’s children to reach their parent, that works as gateway for their authentication inside Huxon. The hostname must be reachable by the children of the local node - otherwise sensor boards will not be able to connect to their parent. The hostname can be an IP address such as 192.168.3.122 or a Fully Qualified Domain Name (FQDN) as localraspberry.mydomain.com. When a FQDN is used, children nodes must be able to resolve the FQDN through DNS.

local node setup

Once the details are specified you can confirm the creation of the node, and Huxon will start creating the device. The local node will be registered in your cloud account as an edge device, and its status on Huxon transitions to preparing. After Huxon concludes its internal processing, it is ready to accept the first connection:

local node setup

The local nodes needs to go through two setup steps to automatically connect to Huxon

  1. Install the base OS with required software (this operation needs to be performed once per device)

  2. Execute an installation script to setup credentials and configurations of the device (this operation needs to be performed every time the device is connected to a new project in Huxon)

Both steps are described - for each supported device - by clicking on SETUP INSTRUCTION.

local node setup instruction

Note

The provided installation script is specific for each local node that is created

After the final setup command has been executed on the node, it automatically reboot and connects to Huxon. Once the device is connected you will see its status updated.

local node ready

You can also force Huxon to check for new connections by using the top button RUN CONNECTIVITY CHECK

On local nodes it is also possible to add Containerized Sensor.

Containerized Sensor

A Containerized Sensor is an element in the infrastructure capable of generating data, similarly to a sensor of a Sensor Board.

Each containerized sensor has a set of images that can be deployed and run in a docker container, generating the data and making it available in the user code, and to the rest of the infrastructure nodes involved in the deployment.

The containerized sensor is useful when you want to import any existing code that produces data, inside the Huxon platform.

Please, refer to the guides provided by Azure to understand how to construct and build the docker image using different languages:

Privileged Mode

In case you need your containerized sensor to access resources (such as physical sensors) on the host device where it is running, it will need to be deployed in privileged mode. You can select the privileged mode for each different containerized sensor using the dedicated button.

containerized sensor

Note

The supported IoT Edge version is 1.3

Sensor boards setup

Sensor boards can be created only after creating a first Local node, and needs to have a Local node as parent. The process to create a Sensor board, is similar to the one for creating a Local node.

create sensor board

For your convenience, Huxon already provides a MAC Address for the device. Specify the name and the parent of the sensor board, and click CREATE to register it to Huxon.

Huxon automatically generates a Base Firmware that you will need to flash on the device to connect it to Huxon.

sensor board setup instructions

The setup instructions contains all the steps on how to download the base firmware and install it to the sensor board.

Note

The provided Base Firmware is specific for each sensor board that is created.

Once the sensor board is flashed, it can automatically connect to Huxon.

Emulated Sensor boards

Huxon allows to emulate all supported Sensor boards. Emulated sensor boards reproduce the behavior of Sensor boards. You can configure each sensor setting (i.e. a specific sensor’s ODR), as you would do for any physical Sensor Board. Furthermore, they produce random data considering the full scale of each sensor.

Emulated Sensor boards can be replaced once in posses of a physical one, or can be used to easily prototype the infrastructure.

emulated sensor board setup instructions

To create an emulated Sensor board, simply flag the emulated checkbox during Sensor board creation, and Huxon will do accordingly.

Cloud nodes setup

Cloud nodes are the easiest to create.

cloud node install

Specify the Device Name, and Huxon will automatically create a virtual machine in your cloud resources and launch the installation script to register it to Huxon.