OpenRemote claims to be a 100% open-source IoT platform suitable for DIYs as well as OEMs. The asset management platform can help with the tracking of vehicle fleets, energy systems, or crowds, help to build smart cities, smart buildings, smart airports, and more.
While most cloud IoT platforms rely on open-source tools, the software hosted on the providers’ servers is usually closed-source as we’ve seen in our comparison between Microsoft Azure IoT, Balena, and Particle, but OpenRemote is different will the full stack being released under an AGPLv3 open source license.
OpenRemote 3.0 software is comprised of four main blocks:
- The Frontend is comprised of Consoles (native iOS and Android apps), Web components and Templates, as well as a System Administration interface used to create dashboards and control panels.
- Manager – headless Java application to capture the current asset states and includes Asset Management, State & Historical Data, Event Processing & Rules Engine, and Messaging & Steaming. The rules, written in Groovy, JavaScript, JSON, or Flow model, execute actions when matching asset state or sequence of events are detected. One example would be when one asset enters or leaves of geofenced area.
- Agents are the interface to 3rd party APIs and service protocols like JAX-RS Restful HTTP API, Websockets, or MQTT.
- Security – OpenRemote relies on Keycloack for identity and access management, and offers TLS/SSL connectivity through an HAProxy-based reverse proxy.
I always find reading specs for cloud software rather abstract, but luckily there’s a demo website to which you can log in with smartcity/smartcity username & password to get a better idea of what’s possible with the platform.
The demo allows you to access various assets that include environmental sensors, power consumption/generation sensors, people counter, parking space occupancy, and so on. There are four tabs with a map showing the location of assets, a list of assets, rules definition, and an Insights section where charts can be plotted to monitor the assets.
If you’d like to find out more details and/or give it a try, the source code, a Docker image, and documentation for OpenRemote 3.0 can be found on Github. The project’s website lists some use cases, hosts more documentation for developers, as well as a support forum.
OpenRemote should compete against other open-source Cloud IoT platforms like Thingsboards or Thinger.io, but I’m not familiar enough with any of those platforms to write a useful comparison. It could be biased but OpenRemote did compare themselves against OpenBalena, Fiware, Thinger, and ThingsBoard. Here’s what they had to say about Thinsboards and Thingers.io in particular:
Thinger was developed as a complete and friendly solution for small users, with a few platform integrations. However, with the central server offered only as a commercial service, it is no longer completely open source.
Thingsboard has gained significant traction and is backed by investors. It managed to develop an extensive library of visualization widgets, and has recently introduced a horizontally scaling solution. Like Thinger it’s pushing towards moving advanced features from opensource into a paying commercial model. This IoT platform is mostly popular with smaller companies.
The comparison table from the article actually implies OpenBalena is the closest competitor with regards to open-source support, and with a larger communication, but OpenRemote claims OpenBalena is not quite as user-friendly as features are limited compare to BalenaCloud commercial solution:
OpenBalena is merely a device orchestration tool allowing you to manage large numbers of devices in the field. It’s a complimentary function to all of the others.
It’s commercial version ‘BalenaCloud’ is used by many. The open source version is somehow crippled as it uses just a command line editor and misses some of the relevant features or documentation such as querying your installed base.
If you are familiar with any of those IoT platforms and take issues with the comparison, let us know in the comments!
Jean-Luc started CNX Software in 2010 as a part-time endeavor, before quitting his job as a software engineering manager, and starting to write daily news, and reviews full time later in 2011.
Support CNX Software! Donate via cryptocurrencies, become a Patron on Patreon, or purchase goods on Amazon or Aliexpress
With AGPL 3 it will not gain any serious traction. This license is too restrictive for most commercial applications, especially in the embedded arena, and students projects aren’t enough to sustain it.
Can you please evaluate on this? What particularly is wrong with AGPLv3 which holds it from serious traction?
Fantastic… Thanks for writing this
Muy buen artículo
Lo probaré
Muchas gracias
This project is amazing.
Thankyou