How far can you get with open-source IoT platforms?
I’m testing open-source IoT platforms for a small IoT toy project. Here are three platforms I found interesting and where I’m starting.
I've been working on a small IoT toy project recently.
Nothing serious yet. I mainly wanted a reason to reconnect sensors, send some data, build a dashboard, and see how much of the infrastructure that used to require custom development is already available today.
That led me to look at open-source IoT platforms.
I started with a fairly simple filter: active projects with meaningful GitHub adoption, preferably something I could self-host but also try as a managed cloud service without spending days setting up infrastructure.
I'm going through them one by one. These are the first three that caught my attention.
1. ThingsBoard
ThingsBoard was the first one I tried.
It is an open-source IoT platform covering device management, telemetry, dashboards, rule processing, alarms, gateways, and multi-tenant environments. Its Community Edition is Apache 2.0 licensed, while ThingsBoard also offers a managed cloud version.
For a toy project, the appeal is straightforward: I can send sensor data over MQTT, visualize it, create rules and alarms, and later decide whether I want to keep using the cloud or run the platform myself.
2. EMQX
EMQX came up almost immediately when I sorted IoT-related projects by GitHub popularity.
It is different from ThingsBoard. EMQX is primarily an MQTT platform rather than a complete IoT application platform. Its focus is on reliably moving messages between large numbers of connected devices and backend systems.
It also has a managed cloud service, including a serverless tier with a free monthly allowance, which makes it easy to experiment without running an MQTT broker myself.
One detail worth noting is licensing. EMQX versions from 5.9 onward moved from Apache 2.0 to Business Source License 1.1. The source is available and development or single-node use is broadly accessible, but it is not the same licensing model as a conventional Apache-licensed open-source project.
For my project, I see EMQX less as an alternative to ThingsBoard and more as infrastructure that could sit underneath or alongside an IoT application.
3. OpenRemote
It includes device and asset management, rules, dashboards, user management, multi-tenancy, edge gateways and various ways to connect external systems. The project describes itself as a 100% open-source IoT platform and uses the AGPLv3 license.
Its model is also slightly different from the usual SaaS approach. You can run the platform yourself, while the company behind it makes money through hosting, support, professional services and commercial licensing where needed.
I haven't tried it deeply yet, but it looks particularly interesting for projects where assets, automation and custom IoT applications matter more than simply displaying sensor values.
For now, I'm using this toy project as an excuse to actually install these tools, connect some sensors, send real data through them, and see where each one becomes useful — or frustrating.
I'll share the setup, what worked, what didn't, and how the project evolves as I go.