All News | Boards | Chips | Devices | Software | Archive | About | Contact | Subscribe
Follow LinuxGizmos:
Twitter Facebook Pinterest RSS feed
*   get email updates   *

Tutorial shows how to create a cheap, DIY IoT cloud platform

Jul 26, 2016 — by Eric Brown — 7272 views

[Updated: Aug. 8] — RTL has published a tutorial about creating a secure IoT platform based on its free “SharkSSL-lite” software, plus ARM mbed-enabled SBCs and a low cost VPS.

Real Time Logic (RTL), which is known for its BarracudaDrive remote file manager and lightweight, embeddable Mako Server webserver, has released a set of instructions and videos for how to setup your own secure IoT solution on the cheap. The tutorials describe an end-to-end, node-to-cloud solution built around RTL’s free SharkSSL-lite software, which is based on its venerable SharkSSL (SSL/TLS stack) server library, as well as Mako Server for the Linux or Windows server.

With SharkSSL-lite or another SSL solution, you can securely control both the device-side “edge nodes,” in this case based on Cortex-M-based boards running ARM mbed OS, and the server side running Linux. RTL’s DIY cloud solution tutorial consists of four YouTube videos (see farther below) along with other tutorial materials posted on its website. The instructions show how to work with the mbed-compatible version of SharkSSL-lite, as well as lease a low cost Virtual Private Server (VPS) costing only $8 a year. The tutorial also shows how to install the server side software.

Shark-SSL diagram
(click image to enlarge)

The SharkSSL-lite mbed software is free to use for non-commercial projects and DIY. You can also download an open source edge node stack that can be compiled for many embedded platforms, including embedded Linux boards like the Raspberry Pi. However, this fully open source “lite” version of SharkSSL is not designed to use SSL, says RTL. Additionally, when using the SharkSSL-lite, “the peer side must support Elliptic Curve Cryptography (ECC) and you must use ECC certificates,” and “the peer side must also support the new ChaCha20/Poly1305 cipher combination,” states the company.

The SharkSSL-lite based system uses trusted X.509 (SSL) certificates, the setup of which comprises most of the tutorial. The process makes use of Mako Server’s Certificate Manager software to set up trusted certificates.

Most IoT/cloud server solutions are built around a Virtual Private Server (VPS) such as Microsoft Azure or the Amazon solution found in Amazon’s AWS IoT platform. RTL argues that these services are overkill for most small-scale operations and DIY projects, which can be served perfectly well with a low-cost VPS. The company recommends for selecting an affordable VPS.

RTL opted for an $8/year and up “Blueberry” plan at the VPS farm, along with a free domain name obtained from The VPS offers 64MB of memory, providing enough capacity to connect up to 10,000 devices. Other services with more memory and support for more devices can be found for not much more.

Mako Server stack running the IoT executable

The server side solution is based on the Linux-compatible Mako Server, but it could be any such server that similarly includes an IoT broker to communicate with the mbed-based edge nodes. The server can be installed on a PC or SBC, so you do not need to use an online cloud server unless you need to access the edge nodes from disparate networks.

Mako Server’s SMQ architecture
(click image to enlarge)

Mako Server’s IoT broker uses a secure IoT protocol called SMQ (Simple Message Queues). SMQ is similar to MQTT’s pub/sub mechanism, and enables web-based user interfaces to control edge nodes in real time.

Browser-to-device commands and data pass through the DIY cloud server
(click image to enlarge)

Since all communication passes through the cloud server, “you will not run into any network address translation (NAT) traversal issues when communicating between different (local) networks,” says RTL.

The third video demonstrates the remote control of an LED using RTL’s SharkSSL-lite based IoT cloud solution.

Tutorial: RTL’s SharkSSL-lite based IoT cloud solution

Tutorial: SSL security on SharkSSL-lite based IoT cloud solution


Tutorial: ESP8266 Arduino WiFi IoT Device to Cloud Setup

Further information

The complete set of instructions for RTL’s SharkSSL-lite based IoT cloud solution can be found at Real Time Logic’s Mako Server site.

(advertise here)

Print Friendly, PDF & Email

Please comment here...