LED cube goes IoT

The demonstrator we implemented for the LED cube features all the aspects and functions of an IoT product.

 

IMPRESSIVE CONCEPT

The demonstrator consists of three parts – front end, back end and embedded hardware.

  1. The application can be controlled and its status displayed via the front end.
  2. In the back end, the device hub provides an MQTT broker and manages the embedded devices for the front end. The data (animations and updates) are also stored in Azure Blob Storage. The device hub also functions as an MQTT broker that receives and processes messages from the embedded hardware.
  3. As embedded hardware, the LED cube becomes a vivid gadget for trade fair appearances.

Figure 1: overview of the LED cube IoT application

TECHNOLOGIES USED

Not only is the demonstrator used to implement the technical application, it is also a way of gaining insights into the use of the technologies listed below. This is not just limited to the application, but also the development process with Azure DevOps.

ComponentTechnology used
WebsiteAngular, Node.js, Javascript, HTML / CSS
HostingAzure App Services, Kubernetes Service
Device hubMessage Broker (MQTT, JSON), Twin (JSON), PostgreSQL, .NET, RESTful API
Blob storageAzure Blob Storage
LED cube.NET nanoFramework, C#
CI / CD toolchainAzure DevOps

RANGE OF FUNCTIONS IMPLEMENTED

The following functions have been implemented for the LED cube:

FunctionDescription
Managing multiple cubesEach cube has its own ID, which makes it possible to manage multiple cubes according to the application.
Controlling the cubeThe animation playlist currently in use can be controlled using the play, pause, stop and skip buttons in the front end.
Managing animations and playlistsAll animations available on the cube and the current playlist can be displayed and managed via the front end.
Continuous integration and deploymentWith the pipelines in Azure DevOps, it is possible to compile and deploy all the software components of the demonstrator.
Remote software updateThe software on the LED cube can be updated via the website.

COMMUNICATION PROCESS – PLAYING A PLAYLIST

A playlist contains several animations that are set to play in a certain order. If this playlist is uploaded to the LED cube, the communication process is as follows:

Figure 2: “Playing a playlist” communication process

This example demonstrates how the individual components interact while the playlist is downloaded. The central point here is the device hub. It works with the MQTT broker and the twin to offer interfaces to the website and LED cube.

Summary

Viewed in isolation, the individual technologies are usually understood relatively quickly and tested with the help of a demo. There are plenty of instructions on how to do this on the Internet. The challenge instead lies in connecting the individual components. This aspect was successfully played through with the manageable functions of the demonstrator. This means that the LED cube has not just been given a couple of new features. The application is instead a tool to understand technologies and procedures by means of a comprehensible example. Used solutions can now be applied directly in customer projects.

Contact us