ioBroker

An integration platform for the Internet of Things focused on building automation and data logging.

ioBroker screenshot 1

ioBroker is an open-source integration platform for the Internet of Things. It focuses on building automation, smart metering, ambient assisted living, process automation, visualization, and data logging. The software acts as a central hub that allows different systems to interoperate by defining common rules for data exchange and event publishing between disparate hardware and software services.

Deployed as a server application, ioBroker runs on any hardware or operating system that supports Node.js, including Linux, Windows, and OSX. It utilizes a specific database schema to manage information and is typically installed via a command line interface or a dedicated installer. The platform is designed to handle the complexities of smart home environments by providing a standardized way to translate data from various protocols into a unified format.

Key features

  • In-memory database for holding real-time data
  • Separate storage for configuration objects and state values
  • Redis integration for key-value storage and message brokering
  • Adapter-based architecture to connect diverse external systems
  • Support for publish/subscribe patterns to maintain system states
  • Compatibility with ARM and x86 hardware architectures
  • Ability to run adapter processes across a network via IP networking
  • HTTPS support for securing web and admin interfaces

The system architecture relies on adapters, which are separate Node.js processes that connect external devices and services to the core databases. These adapters can be implemented in nearly any programming language and can run on any host capable of reaching the databases via IP networking. Because each adapter instance spawns its own process, system RAM is the primary limiting factor for the number of connected systems, with individual adapter memory footprints typically ranging between 10 and 60 MB.

The platform is intended for use within trusted networks. To maintain security, the documentation recommends that users avoid exposing databases or smart home devices directly to the internet. Instead, users are encouraged to activate HTTPS with valid certificates and employ additional security measures such as VPNs, VLANs, or reverse proxies to protect the administrative interfaces and data streams.

This software serves as a flexible middleware for users building complex IoT environments and automated building systems.

Last Modified
Software TypeWeb App / Server
Platform
Last Activity1 month ago
Repository Age12 years
LicenseMIT
Open Source Alternative to
Open Source Software.io

Join our newsletter to get shiny new open source software delivered to your inbox. Unsubscribe anytime.