Our technology
We developed a common Arduino library allowing an ecosystem of IoT devices (based on the microcontroller ESP32) send their data (audio, images, measurement) to our backend.
Every communication (both REST calls and Web Sockets) are secured via JWT and profiled on a Postgres database.
​
​
​
Our backend is developed using Nest.js and provided as micro-service Web API.
The backend is hosted on Azure and is highly scalable and extensible by adding new AI services.
​
​
​
​
​
​
​
​
We developed a Core Typescript framework that allow every "JavaScript enabled" device (smartphones, tablets) to act as "client".
The framework is "platform agnostic" and uses a list of Managers (basically interfaces) to both interact with the backend and manage the device (eg,: get the audio from a microphone, display the recognized voice, play a TTS voice, etc).
Using this strategy we are able to quickly develop a PWA (Progressive Web Application) for a specific device (eg a tablet) just by implementing the bindings to the hardware (so by "linking" the implementation of the Manager for that hardware).​
​
​
​
​
​
​
​
​
..and the system is expandible!
..allowing Mirko to use new functionalities on the same client (his smartphone) just by adding an new IoT device.