IoT with Exosite
Texas Instruments provides an access to Exosite to test the IoT capabilities of the TM4C129 Connected LaunchPad and the CC3200 WiFi LaunchPad. Up to 2 devices can be created.
I've tested this service with a weather station on a CC3200 LaunchPad for one day. The weather station measures temperature, humidity, pressure and light, and sends data every 30 minutes. |
Create the Device
The first is about creating the device. Select it among a list of predefined devices or create your own. Enter the MAC address of the device: this element is key to identify the device and activate it.
The confirmation screen provides a unique identifier, called CIK. Copy and keep it in a safe place. |
Create the Data
Once the device has been created, the second step is about which data you want to collect.
Select the source, here the device just create before. Then set the name, the format (integer, float, ...), the unit and an alias. The alias is useful for keeping the short names when sending data. |
Create the Dashboard
The third step is to create a dashboard to display the data. Click on +Add Dashboard. Name it and select the options.
|
Select the newly created dashboard and click on the Add Widget button. Name it and select the source, here Light OPT.
|
Program the Board
Remember the CIK obtained after creating the device?
On the sketch running on Energia, paste it into the CIK variable. The program uses it to identify the device on the exist website. The client here is a WiFiClient on the CC3200 LaunchPad. |
The first time it connects, the device needs to be activated or provisioned. This is done by the provision() method, with the vendor name, the model name and the MAC address used as identifier.
The writeRead() function sends and retrieves data to and from Exosite. Values are simples strings, here "light=31395.0". |
Run It!
Once programmed, the application ran flawlessly during 24 hours. Only one report was missing.
The dashboard displays nice graphics. On the data menu, each data can be listed and exported to a CSV file. However, I haven't found any way to edit the list and remove inconsistent data, like the peak at 20:00. The CSV of comma separated values file is a standard format read by all the spreadsheet. However, some spreadsheets don't read the dates correctly, formatted as a string, "20:05:35 Sep 3 2015 UTC". |
Conclusion
There are many more options: creating an alert and sending an e-mail, controlling the board remotely. Although the Exosite portal provides step-by-step procedures, configuration wasn't easy.
The biggest challenge was the documentation. For example, I haven't managed to find the correct values for the parameters required for connection, as vendor and product names, on the support sections of the dedicated Exosite for TI and Exosite websites. Another example, I faced confusing wording for key operations: are device activation and device provisioning the same operation? The Exosite Garage GitHub repository provides libraries for Arduino and Particle as well as examples for CC3200. Exosite needs some polishing before bringing IoT to everyone. Click to enlarge |
Pros
|
Cons
|
Wrap-Up
|
Links
|