Neuron is an Industrial IoT (IIoT) connectivity server that bridges industrial devices and modern data platforms. It supports dozens of industrial protocols and converts them into MQTT for seamless integration between IIoT platforms and shop-floor devices.
Key features:
- Edge-native application with real-time capability and low latency at the edge.
- Loosely coupled modular architecture with pluggable modules for easy extension.
- Hot-pluggable plugins: update device and application modules at runtime.
- Broad protocol support: Modbus, OPC UA, Ethernet/IP, IEC 60870-5-104, BACnet, and more.
- High concurrency: connect many devices with heterogeneous protocols simultaneously.
- Built-in stream processing via eKuiper for rules and AI/ML analytics.
- Northbound access for MES/ERP, SCADA, historians, and analytics via Sparkplug B.
- Tiny footprint (<10 MB) and low CPU usage; runs on ARM, x86, and RISC-V.
- Flexible deployments: native binaries or containers.
- Manage devices and tags via HTTP API and MQTT API.
- Works well with EMQX, NanoMQ, and eKuiper.
- Core framework and Modbus/MQTT/eKuiper plugins are available under LGPLv3.
NeuronEX is the commercial distribution of Neuron, offering extended capabilities and professional support. Compared to the open-source Neuron:
- Extended protocol support: Additional industrial protocols (e.g., OPC UA, Siemens S7, Ethernet/IP, etc.)
- Advanced dashboard: Full-featured web UI with enhanced visualization and management capabilities
- Enterprise plugins: More southbound device adapters, northbound application connectors, and rule engines
- Cloud integration: Direct connectors for major cloud platforms (AWS, Azure, Google Cloud, etc.)
- Data security: Enhanced encryption, auditing, and compliance features
For more details, visit the NeuronEX documentation.
- Quick Start
- Installation
- Configuration
- Documentation
- Dashboard
- Community
- Contributing
- Security
- License
Default credentials: username admin, password 0000.
You can download from Release.
$ tar xvf neuron-{version}-linux-amd64.tar.gz
$ cd neuron
$ ./neuron --logOpen a browser and navigate to http://localhost:7000 to access the Neuron web interface.
Download the latest release from Releases, then extract and run as shown above.
-
Build Neuron
$ git clone https://github.com/emqx/neuron
$ cd neuron && mkdir build && cd build
$ cmake .. && make- Download and Unzip Dashboard
$ wget https://github.com/emqx/neuron-dashboard/releases/download/2.6.3/neuron-dashboard.zip
# Unzip neuron-dashboard.zip to the build directory
$ unzip neuron-dashboard.zip- Run Neuron
$ ./neuron --log- Open a browser and navigate to
http://localhost:7000to access the Neuron web interface.
- Web UI:
http://localhost:7000(default credentials above) - Main config:
neuron.conf - Default plugins:
default_plugins.json - Logging:
zlog.conf/sdk-zlog.conf
See the quick start for a hands-on walkthrough.
- Quick start: Modbus TCP collection and MQTT publishing
- APIs: HTTP, MQTT
The open-source version of the Dashboard is currently at version 2.6.3, which has been suspended for development and maintenance. This version is also the one integrated by default with Neuron. For a more complete and professional Dashboard, please use NeuronEX.
- Follow @EMQTech on Twitter.
- If you have a specific question, check out our discussion forums.
- For general discussions, join us on the official Discord team.
- Keep updated on EMQ YouTube by subscribing.
Contributions are welcome! Feel free to open issues and pull requests to improve Neuron. If you plan a larger change, please start a discussion first to align on direction.
If you believe you have found a security vulnerability, please avoid creating a public issue. Instead, contact the maintainers privately (e.g., via GitHub Security Advisories) so we can investigate and fix it responsibly.
See LICENSE.