MAINFLUX IoT PLATFORM

OPEN SOURCE AND PATENT FREE
DEPLOY ON-PREM, HYBRID OR IN THE CLOUD


Full-stack capabilities built as microservices,
containerized by Docker, and orchestrated with Kubernetes.

Multi-protocol support, hardware agnostic.
Connect any device or 3rd-party application.

Secure connections via TLS and DTLS.
Mutual TLS authentication with X.509 certificates.

open source internet of things

MAINFLUX IOT PLATFORM
QUICK PREVIEW


FEATURES

Open source & Patent Free

Apache 2.0 license ensures transparency, control, community testing, support, bug fixes, no client-access licensing, and no vendor lock-in.



TECHNOLOGY CHOICES

Microservices

Clear division of responsibilities, easy maintenance, and flexibility.



On-premises, hybrid or in the cloud

Deploy on-premises, at the edge (including Raspberry Pi-class devices), or on any Docker-compatible cloud. Supports native installation, Docker containers, and Kubernetes orchestration.



Golang

Modern, highly concurrent, readable, easier to maintain, fast and efficient, highly portable (runs on Windows, Linux, Mac and both Intel and ARM CPUs).



Highly Secure

NGINX reverse proxy for load balancing, TLS and DTLS termination. Mutual TLS (mTLS) authentication using X.509 certificates provides layered security.



Docker Containers

Strong isolation, fast startup, easy distribution, minimal footprint (~5MB per microservice) thanks to Golang and multi-stage builds. Production deployment via Kubernetes.



Performant

Efficient and robust execution with low footprint due to Golang.



PUB/SUB multiprotocol messaging bridge

MQTT, WebSocket, CoAP) based on NATS ultra-performant broker.



Extensible

Easily add new features or vertical solutions without modifying or reconfiguring the core platform.



LoRa Integration

Built-in LoRa adapter integrates Mainflux IoT platform with LoRa servers seamlessly.



MAINFLUX IOT PLATFORM
QUICK PREVIEW


FEATURES

Open source & Patent Free

All the benefits of open source solutions: transparency, control, community testing, support and bug fixes. No client access licenses issues. No vendor lock. Apache 2.0 license.



On-premises, hybrid or in the cloud

Deploy on-premises, at the edge (including Raspberry Pi-class devices), or on any Docker-compatible cloud. Supports native installation, Docker containers, and Kubernetes orchestration.



Performant

Efficient and robust execution with low footprint due to Golang.



Highly Secure

NGINX reverse proxy for load balancing, TLS and DTLS termination. Mutual TLS (mTLS) authentication using X.509 certificates provides layered security.



Extensible

Easily add new features or vertical solutions without modifying or reconfiguring the core platform.






TECHNOLOGY CHOICES

Microservices

Modern architecture, complete set of easy-to maintain services with clear division of responsibility.



Golang

Modern, highly concurrent, readable, easier to maintain, fast, efficient, highly portable (runs on Windows, Linux, Mac and both Intel and ARM CPUs).



Docker Containers

Good isolation, fast startup, easy to distribute, small footprint due to Go and multi-stage builds (~5MB per microservice), production deployment using Kubernetes.



PUB/SUB multiprotocol messaging bridge

MQTT, WebSocket, CoAP) based on NATS ultra-performant broker.



LoRa Integration

LoRa adapter for bridging between Mainflux IoT platform and LoRa Server service.


MAINFLUX IoT PLATFORM
INFRASTRUCTURE STACK

The Mainflux infrastructure stack includes all essential components
and microservices necessary for IoT solutions, projects or products.
The IoT Platform will facilitate the interoperability of the
existing enterprise applications and other IoT solutions.

CONNECTIVITY
MESSAGE ROUTING
& NORMALIZATION




Bidirectional communication (interaction) with very large number of devices and gateways, using different open protocols and data formats.

Normalization of the messages for easy integration with the rest of the infrastructure.

Security from the edge using encrypted channels to secure data. Support for several authentication factors (Authentication - Multi-level-authentication) and specific data-access-rules.

Monitoring network data usage and billing and generating notifications and alerts.

Technology

PUB/SUB multiprotocol messaging bridge HTTP Server, WebSocket Server MQTT Broker, CoAP Server

NATS -message broker , an open-source scalable messaging system used for message exchange within the Mainflux platform itself.

Data normalizer.

Features

Multi-protocol support and hardware agnostic. Connectivity for any device and any application.

Ultra-performant broker

Message normalization.



DEVICE MANAGEMENT
& DEVICE REGISTRY




Ensure correct operation, configuration, firmware/software updates, and troubleshooting of IoT devices and gateways.

Device discovery, registration, and provisioning.

Remote configuration, device control and management of firmware/ software updates, and troubleshooting
Grouping devices by connection to channels (Channel corresponds to MQTT topic)

Stop/reboot selected devices

Manage organizations, users, and access rights


Technology

Go programming language for highly concurrent server backend programming

JWT and Certs for Devices and JWT (short TTL)

Bearer Token

Features

Highly-scalable and fault tolerant for massive deployments (millions of devices and sensors)

Asynchronous device control

Automated device discovery and provisioning (box-to-cloud setup in minutes)



DATA MANAGEMENT, AGGREGATION & STORAGEE


Aggregation and collecting data from devices and processing and storage to database - a scalable data store that supports the volume and variety of IoT data.

Data prioritization, critical when machines, sensors, and other objects are generating new floods of information

Enablement of device data synchronization
Multimodal database support -

Storage scaling

Technology

Internal database PostgreSQL (device metadata)

JWT and Certs for Devices and JWT (short TTL)

Bearer Token

Features

Support for databases that store and process data in multiple data models.

Scalable for big data and able to store both structured (SQL) and unstructured data (NoSQL).



APPLICATION
ENABLEMENT


Integrated development environment for custom IoT applications and industry grade IoT solutions, rapid prototyping and development of intelligent products.

Seamless provisioning of any device or intelligent /smart product access management.

Integration of your solution or device-data with other key business applications and web services.)

Technology

A set of software SDKs and pre-built client libraries for various HW platforms in several programming languages (C/C++,JavaScript, Python)

Set of well defined and documented APIs

Identity Provider for OpenID Connect (OAuth 2.0)

Docker Container and docker-compose, Kubernetes0

NGINX load balancing

Features

LDeveloper and user friendly

Setup is quick and easy, enabling developers to save implementation time.



UI - DATA VISUALIZATION


Real-time graphical visualization of real-time sensor data- reports, graphs, and dashboards for different types of data, telemetry, statistics, geolocation, metadata.

Interactive UI for device control, configuration updates, and metadata management.

Technology

Angular 7+ & Typescript and Bootstrap 4+ & SCSS

Features

System manangement: Create Things (devices and apps) and channels, manage connections and control activity.

Data Visualisation: Graphs and maps to visualise messages received and devices locations.
Rules. engine: Configuration of rules to inform user depending on the received data. AI: apply AI on data to extract informations about your devices.



INTEGRATION CAPABILITIES


Open, modular, flexible architecture with many IoT protocols and easy-to-use APIs, ensures seamless 3rd-party integration with existing enterprise systems (e.g., ERP, BI, CRM),
databases, analytics programs, back-end systems and other cloud services.

Technology

Built-in application programming interfaces (API), software development kits (SDK ), and gateways.

IoT Protocols: HTTP Server, WebSocket Server MQTT Broker, CoAP Server.

Features

Modular microservice architecture.

Seamless integration without extensive reconfiguration

Extensible: Adding new functionality for vertical solutions and applications does not require reconfiguration or modification of the core platform. Permitting the continued flow of data and operations while preferred functions are extended.

Multi-protocol support and hardware agnostic. Connectivity for any device and any application.



SECURITY


Mainflux is a highly-secured system. It has a dedicated authentication and authorization service that protect the system from unauthorised access and unauthorised devices and applications.

All messages and all network traffic coming from or to Mainflux are encrypted by latest security standards (TLS v1.3).


Technology

Dedicated Mainflux Security server written in Golang.

NGINX reverse proxy for security, load-balancing and termination of TLS and DTLS connections.

Authentication (token based) and Authorization with fine-grained access control TLS and DTLS (HTTPS, WSS, MQTT with TLS, CoAP with DTLS).

Mutual TLS Authentication using X.509 Certificates

API keys based on JWT.

Cryptography with Vault.

Features

Microservices modularized architecture.

Integration without excessive configuration.

Extensible: Adding new functionality for vertical solutions and applications does not require reconfiguration or modification of the core platform. Permitting the continued flow of data and operations while preferred functions are extended.

Multi-protocol support and hardware agnostic. Connectivity for any device and any application.


MAINFLUX IOT PLATFORM
ARCHITECTURE



LINK DESCRIPTION
users Manages platform's users and auth concerns
things Manages platform's things, channels and access policies
normalizer Normalizes SenML messages and generates the "processed" messages stream
http-adapter Provides an HTTP interface for accessing communication channels
ws-adapter Provides a WebSocket interface for accessing communication channels
http-adapter Provides an HTTP interface for accessing communication channels
mqtt-adapter Provides a MQTT interface for accessing communication channels
lora-adapter Provides a LorasWAN interface for accessing communication channels
NATS System event bus
NGINX Reverse Proxy with Auth forwarding
Mainflux Demo

Watch Demo
For IoT Solution or Hardware Expertise

CONTACT US
Mainflux Labs References

Download

MAINFLUX LABS IS FEATURED IN

MAINFLUX LABS IS FEATURED IN