Simfony

Simfony's IoT Platform is focused on providing the core set of tools that enables the rapid roll-out of any IoT project or service. Companies can use the service to easily and rapidly design, prototype and deploy IoT projects that match their exact needs and requirements, rather than looking for an off the shelf product that fits best. The platform provides the following services: global mobile data connectivity, SIM management and control, device authentication and authorization, a visual service designer, data storage, reporting and visualization, IoT VPN and an extensive API exposing all of these capabilities for enterprise integration. All these services are available on a "pick and choose" basis enabling maximum flexibility and optimizing costs.

More information can be found at www.simfonymobile.com.

Configuration

The Simfony Cloud Connector is capable of self-configuration using data already provisioned from the Simfony Cloud Platform. This function requires that the user is authenticated and authorized into the Cloud Service with a specific set of credentials provided through the Self-Care portal. These credentials are not stored on the Meshlium or by the Connector and will have to be entered manually each time an Auto-Configuration action is requested through the web GUI. This functionality runs on the user's browser that is connected to the Meshlium device and requires Internet access, i.e. from the browser to the Cloud Platform API.

Once the user is authenticated, a list of all the Cloud provisioned devices is available for selection. If one of the devices is selected in the drop-down list, the web GUI will automatically fill in or overwrite the following parameter: Client ID, Device ID, Device Name, and Device Password.

Figure : Simfony cloud connector configuration panel

If the Cloud Connector is already configured with a valid Device ID the Auto-Configuration feature will automatically retrieve the Cloud provisioned data corresponding to that Device ID and fill in the parameters mentioned above. Any previous configuration is overwritten. This functionality can be used to resync the data provisioned in the Cloud with the configuration data of the Connector.

All the data retrieved automatically from the Cloud can also be entered manually.

The user must use the Save button to save any newly configured data or apply any changes to it.

Advanced configuration

The advanced configuration window of the Connector allows the setting of the following parameters:

  • Connection retries: Controls the number of connection testing retries before suspending operations and going to the sleeping phase (see the Functional description chapter, Test connectivity phase in "Simfony Meshlium Connector- User Guide"). Default: 3.
  • MQTT QoS: Controls the QoS of the MQTT PUBLISH messages. Default: 1.
  • Permanent MQTT connection: In case of MQTT connections, controls if the Connector will close the MQTT connection or not during the sleep phase. Default: false.
  • Refresh Interval: The number of seconds the Connector will suspend its operations (sleep time) before starting a new extract and transmit cycle (see the Functional description chapter in "Simfony Meshlium Connector- User Guide"). Default: 300.
  • Maximum transmit interval: The number of Refresh Intervals after which the Connector will transmit the data independently of the number of new database records found and the "Minimum number of DB records" parameter value. Default: 5.
  • Minimum number of DB records: The minimum number of new database records that will trigger a sending procedure of the Connector. If the found new number of records is lower (strictly) than the value of this parameter, the transmit phase will be suspended until the number or records reaches the threshold or the condition expires (see Maximum transmit interval in "Simfony Meshlium Connector- User Guide"). Default: 1.
  • Aggregate sensor data: Controls the way the Connector aggregates the sensor data found in the DB. If "true", the connector will aggregate sensor data from the same Waspmote frames into a single message. If "false" the Connector will transmit the data individually as extracted from the database. Default: true.

Figure : Simfony cloud connector advanced configuration panel

  • Extended sensor data: Controls the number of parameters the Connector will transmit to the cloud. If "true", the whole data extracted from the database will be sent. If "false", only a subset of the data stored in the database is sent. Default: false.
  • Include sensor list: The sensor ID list (section ) that the Connector will look for when extracting data from the Meshlium database. The "Include" and "Exclude" lists are exclusive with the Exclude list having higher precedence. Default: empty.
  • Exclude sensor list: The sensor ID list (section ) that the Connector will exclude when extracting data from the Meshlium database. The "Include" and "Exclude" list are exclusive with the Exclude list having higher precedence. Default: empty.

Running the connector

After the entire configuration is complete, the user can start the connector using the "Start" button of the GUI. The Connector will be started and run seamlessly in background.

Figure : Simfony start button

The Status box will show the Connector's state whenever the page is viewed by the user.

To stop the Connector, the user can press the "Kill" button that will stop the connector from running.

Warning: The "Kill" operation will terminate the Connector process and all it procedures abruptly independently of the stage they are in, i.e. extracting, transmitting, etc.

Figure : Simfony stop/kill button

To stop gracefully the connector the "Stop" button can be used. This will not interrupt any ongoing operations but rather wait for the connector to finish any ongoing activities. The Connector will look for this graceful stop signal each time it is starting or finishing the sleep cycle.

Integration with Simfony's IoT platform

The Simfony Cloud Connector is intended to work with any type of connectivity provided by the Meshlium device it is deployed on. The Connector has two standard protocols available for communicating with the Simfony Cloud: MQTT and HTTP. Both of them are available in the encrypted version also, i.e. MQTT+SSL and HTTPS. The customer it is able to choose the most appropriate protocol for his application.

Each Cloud Connector/Meshlium device must be individually authenticated and authorized before it can send data to the Simfony Cloud Service. The IoT platform will perform protocol specific authentication and authorization procedures and will allow the connectors to send data only if these are successful. The Connector configuration data must contain these credentials before the Connector can run properly.

Before data can be sent from the Connector to the Cloud Platform, a Cloud IoT Application must be deployed in order to listen for data. Customers can easily create, test and deploy their own applications via the Application Designer GUI. Each application can have a specific entry point for the data coming from the sensor and connectors. This entry point is defined by the used Protocol (MQTT or HTTP) and a custom target (MQTT-topic; HTTP-path). This entry point must be also configured in the Connector via the "Connection Type" and "Connection Path" parameters. Once the application is deployed, the connectors can start sending data into it and the custom business logic will be triggered.

Find out more about running the connector in the "Simfony Meshlium Connector- User Guide" at http://www.simfonymobile.com.