Browse free open source IoT software and projects below. Use the toggles on the left to filter open source IoT software by OS, license, language, programming language, and project status.

  • MongoDB Atlas runs apps anywhere Icon
    MongoDB Atlas runs apps anywhere

    Deploy in 115+ regions with the modern database for every enterprise.

    MongoDB Atlas gives you the freedom to build and run modern applications anywhere—across AWS, Azure, and Google Cloud. With global availability in over 115 regions, Atlas lets you deploy close to your users, meet compliance needs, and scale with confidence across any geography.
    Start Free
  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • 1
    ESPHome

    ESPHome

    ESPHome is a system to control your ESP8266/ESP32

    ESPHome is a system for defining and deploying custom firmware to ESP8266 and ESP32 microcontrollers for smart home automation. Using a simple YAML configuration, users can specify how sensors, switches, and devices should behave, and ESPHome compiles and flashes the firmware accordingly. Integrated seamlessly with Home Assistant, ESPHome is ideal for DIY home automation enthusiasts who want full control over their IoT devices.
    Downloads: 23 This Week
    Last Update:
    See Project
  • 2
    MQTT X

    MQTT X

    Powerful cross-platform MQTT 5.0 desktop, CLI, and WebSocket client

    MQTT X is a cross-platform MQTT 5.0 client tool open sourced by EMQ, which can run on macOS, Linux and Windows, and supports formatting MQTT payload. MQTT X simplifies test operation with the help of a familiar, chat-like interface. It’s easy and quick to create multiple, simultaneous online MQTT client connections, and can test the connection, publishing, and subscription functions of MQTT/TCP, MQTT/TLS, MQTT/WebSocket as well as other MQTT protocol features. MQTT stands for MQ Telemetry Transport. It is a publish/subscribe, extremely simple and lightweight messaging protocol, designed for constrained devices and low-bandwidth, high-latency or unreliable networks. To run MQTT Broker locally, EMQX is recommended: An Open-Source, Cloud-Native, Distributed MQTT Broker for IoT. After the MQTT is connected successfully, you can perform MQTT publish and subscription tests.
    Downloads: 22 This Week
    Last Update:
    See Project
  • 3
    MAX! home automation
    MAX home automation is a GTK+ application to manage ELV/eQ-3 MAX! cubes. A cube is a gateway to a network of radiator thermostats, shutter contacts etc. Radiator and wall-mounted thermostat schedule can be edited uploaded, stored into a file and restored from there. Wall-mounted thermostat temperature graphs are indicated on a separate page sorted by the installation room. HTTP server is provided for integration with HTTP-enabled controls. E.g. thermostats can be queried and controlled remotely via HTTP GET-queries.
    Leader badge
    Downloads: 102 This Week
    Last Update:
    See Project
  • 4
    Arm Mbed OS

    Arm Mbed OS

    Platform operating system designed for the Internet of Things

    Arm Mbed OS is an open source embedded operating system specifically designed for the Internet of Things. It’s packed with all the features you need to develop your next IoT product based on an Arm Cortex-M microcontroller efficiently, securely and rapidly. These include security foundations, cloud management services, and drivers for sensors and I/O devices.
    Downloads: 16 This Week
    Last Update:
    See Project
  • Build Securely on Azure with Proven Frameworks Icon
    Build Securely on Azure with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 5
    mySQM+ DIY SQM WEATHER STATION

    mySQM+ DIY SQM WEATHER STATION

    ESP32 mySQM+ Sky-Meter/Weather Station with loads of features

    mySQM+ Sky Quality Meter/Weather Station (c) R Brown, 2020-2025, All rights reserved. Permission is granted for personal and Academic use only. Code or portions of code may not be copied or used without appropriate credit given to author(s). EXPANSION BOARDS - You can expand this project using the two types of project expansion boards at https://sourceforge.net/projects/myesp-boards/
    Leader badge
    Downloads: 69 This Week
    Last Update:
    See Project
  • 6
    emqx

    emqx

    The Most Scalable MQTT Broker for IoT

    EMQX is the world's most scalable and reliable MQTT Broker designed by EMQ. It supports 100M concurrent IoT device connections per cluster while maintaining extremely high throughput and sub-millisecond latency. EMQX boasts more than 20,000 global users from over 50 countries, connecting more than 100M IoT devices worldwide, and is trusted by over 300 customers in mission-critical IoT scenarios, including well-known brands like HPE, VMware, Verifone, SAIC Volkswagen and Ericsson. Flex to meet the demands of various industries towards digital transformation, including Connected Vehicles, Industrial IoT, Oil & Gas, Carrier, Finance, Smart Energy, and Smart Cities.
    Downloads: 168 This Week
    Last Update:
    See Project
  • 7
    MQTTnet

    MQTTnet

    High performance .NET library for MQTT based communication

    MQTTnet is a high-performance .NET library for MQTT-based communication. It provides an MQTT client and an MQTT server (broker) and supports the MQTT protocol up to version 5. TLS support for client and server (but not UWP servers). Extensible communication channels (e.g. In-Memory, TCP, TCP+TLS, WS). Lightweight (only the low-level implementation of MQTT, no overhead). Performance optimized (processing ~150.000 messages/second). Uniform API across all supported versions of the MQTT protocol. Tested on the local machine (Intel i7 8700K) with MQTTnet client and server running in the same process using the TCP channel. The app for verification is part of this repository and stored in /Tests/MQTTnet.TestApp.NetCore. List of connected clients available. Supports connected clients with different protocol versions at the same time. Able to publish its own messages (no loopback client required). Able to receive every message (no loopback client required).
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8

    Broadlink Manager

    Broadlink Manager is a very simple way to work with broadlink rm

    Broadlink Manager is a very simple way to work with broadlink rm products. when i just started working with Broadlink via Home Assistant i found out that teching the system a new code was not that simple and user friendly. so after searching the internet i found this little project written in c# that did wat i want, very easy way to work with broadlink. but, my device type was new model and unsupported so i extended the support for all new models and added a feature wich allows me to add new device without using broadlink application.
    Downloads: 63 This Week
    Last Update:
    See Project
  • 9
    SerialTest

    SerialTest

    A cross platform debugger for serial port/Bluetooth/TCP/UDP

    A versatile test tool running on Windows/Linux/macOS/Android. Works as data transceiver/realtime plotter/shortcut/file transceiver. Supports serial port, Bluetooth SPP client/server, Bluetooth LE client, TCP client/server, UDP. Homepage: https://github.com/wh201906/SerialTest
    Downloads: 78 This Week
    Last Update:
    See Project
  • Build Securely on AWS with Proven Frameworks Icon
    Build Securely on AWS with Proven Frameworks

    Lay a foundation for success with Tested Reference Architectures developed by Fortinet’s experts. Learn more in this white paper.

    Moving to the cloud brings new challenges. How can you manage a larger attack surface while ensuring great network performance? Turn to Fortinet’s Tested Reference Architectures, blueprints for designing and securing cloud environments built by cybersecurity experts. Learn more and explore use cases in this white paper.
    Download Now
  • 10
    ThingsBoard

    ThingsBoard

    Device management, data collection, processing and visualization

    ThingsBoard is an open-source IoT platform for data collection, processing, visualization, and device management. It enables device connectivity via industry standard IoT protocols, MQTT, CoAP and HTTP and supports both cloud and on-premises deployments. ThingsBoard combines scalability, fault-tolerance and performance so you will never lose your data. Provision, monitor and control your IoT entities in a secure way using rich server-side APIs. Define relations between your devices, assets, customers or any other entities. Collect and store telemetry data in a scalable and fault-tolerant way. Visualize your data with built-in or custom widgets and flexible dashboards. Share dashboards with your customers. Define data processing rule chains. Transform and normalize your device data. Raise alarms on incoming telemetry events, attribute updates, device inactivity, and user actions.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 11
    OSHMI - Open Substation HMI

    OSHMI - Open Substation HMI

    SCADA HMI for substations, IoT and automation applications

    Now with IEC61850 support! This project combines existing open source projects and tools to create a very capable, mobile and cloud-friendly HMI system that can rival proprietary software. This approach makes it possible to join forces of each project (Chromium, SVG/HTML5, PHP, Lua, SQLite, Inkscape, Lib61850, OpenDNP3, Nginx, Vega, PostgreSQL, Grafana,…) to achieve a great set of open, evergreen, modular and customizable tools for building great HMIs for automation projects. This is not a toy project! It's been actually used in dozens of substations up to 230kV level and also in control centers with configurations up to 70.000 tags. Feel free to ask questions in the "Discussion" section. Help sponsoring OSHMI here https://github.com/sponsors/riclolsen. >>> Have a look also at my new SCADA project here: https://github.com/riclolsen/json-scada
    Leader badge
    Downloads: 31 This Week
    Last Update:
    See Project
  • 12
    AWS IoT Device Shadow library

    AWS IoT Device Shadow library

    Client library for using AWS IoT Shadow service on embedded devices

    The AWS IoT Device Shadow library enables you to store and retrieve the current state (the “shadow”) of every registered device. The device’s shadow is a persistent, virtual representation of your device that you can interact with from AWS IoT Core even if the device is offline. The device state is captured as its “shadow” within a JSON document. The device can send commands over MQTT to get, update and delete its latest state as well as receive notifications over MQTT about changes in its state. Each device’s shadow is uniquely identified by the name of the corresponding “thing”, a representation of a specific device or logical entity on the AWS Cloud. See Managing Devices with AWS IoT for more information on IoT "thing". More details about AWS IoT Device Shadow can be found in AWS IoT documentation. This library is distributed under the MIT Open Source License.
    Downloads: 3 This Week
    Last Update:
    See Project
  • 13
    myFP2ESP32 WiFi ASCOM Focus Controller

    myFP2ESP32 WiFi ASCOM Focus Controller

    ASCOM-INDI ESP32 Wifi focuser

    An ESP32 WiFi focuser. DIY or PCB designs. (c) Robert Brown 2014-2025, Holger M, 2019-2021. All rights reserved. Code or portions of code may not be copied or used without appropriate credit given to authors. Spreadsheet to calculate what stepper motor to use. https://sourceforge.net/projects/arduinoascomfocuserpro2diy/files/Documentation/Nema-Stepper-Motors.xlsx/download Spreadsheets to calculate CFZ https://sourceforge.net/projects/myfocuserpro2-esp32/files/CFZ%20Spreadsheets/CFZ%20Spreadsheets.zip/download Focuser Basics Guide (PDF) - shows how to derive the correct motor requirements for your system (mandatory reading) https://sourceforge.net/projects/myfocuserpro2-esp32/files/Documentation/Focuser%20Basics.pdf/download https://youtu.be/90KeSspN3e0
    Leader badge
    Downloads: 99 This Week
    Last Update:
    See Project
  • 14

    pyrpl

    PyRPL turns your Red Pitaya into a powerful analog feedback device.

    The Red Pitaya is a commercial, affordable FPGA board with fast analog inputs and outputs. This makes it useful for quantum optics experiments, in particular as a digital feedback controller for analog systems. Based on the open source software provided by the board manufacturer, PyRPL (Python RedPitaya Lockbox) implements many devices that are needed for optics experiments with the Red Pitaya. PyRPL implements various digital signal processing (DSP) modules (see features below). It allows to arbitrarily interconnect the available DSP modules and retrieve signal values on timescales below 1 ms. The graphical user interface (GUI) provides a realtime display of the various measurement instruments and allows the easy configuration of DSP signal chains and feedback controllers. At the highest abstraction level, arbitrary feedback sequences can be defined to fulfill tasks as complex as approaching and locking a resonance of a high-finesse Fabry-Perot cavity (tested up to finesse=100,000).
    Downloads: 60 This Week
    Last Update:
    See Project
  • 15
    AWS IoT C++ Device SDK

    AWS IoT C++ Device SDK

    SDK for connecting to AWS IoT from a device using C++

    The Device SDK simplifies access to the Pub/Sub functionality of the AWS IoT broker via MQTT and provides APIs to interact with Thing Shadows. The SDK has been tested to work with the AWS IoT platform to ensure the best interoperability of a device with the AWS IoT platform. The Device SDK provides functionality to create and maintain a MQTT Connection. It expects to be provided with a Network Connection class that connects and authenticates to AWS IoT using either direct TLS or WebSocket over TLS. This connection is used for any further publish operations. It also allows for subscribing to MQTT topics which will call a configurable callback function when these messages are received on these topics. This SDK implements the specific protocol for Thing Shadows to retrieve, update and delete Thing Shadows adhering to the protocol that is implemented to ensure correct versioning and support for client tokens.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 16
    IoTDB

    IoTDB

    Apache IoTDB

    Apache IoTDB (Database for Internet of Things) is an IoT native database with high performance for data management and analysis, deployable on the edge and the cloud. Due to its light-weight architecture, high performance and rich feature set together with its deep integration with Apache Hadoop, Spark and Flink, Apache IoTDB can meet the requirements of massive data storage, high-speed data ingestion and complex data analysis in the IoT industrial fields. In the scene of factories, there are tens of devices under LAN network. IoTDB can be installed on a local controller server in the factory to receive data from those devices. The local controller server (normal PC or workstation) with IoTDB can provide the ability to persist data and query data with SQL-like interface. In addition, with TsFile-Sync tool, TsFiles on the local controller can be transmitted to the data center equipped with IoTDB instance in the cloud.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 17
    Zephyr Project

    Zephyr Project

    Scalable, optimized, secure RTOS for multiple hardware architectures

    The Zephyr Project is a new generation real-time operating system (RTOS) that supports multiple hardware architectures. It is based on a small-footprint kernel specially designed for use on resource-constrained and embedded systems. The Zephyr OS can be used for a wide range of applications: from simple embedded environmental sensors and LED wearables to sophisticated embedded controllers, smart watches, and IoT wireless applications.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 18
    AWS IoT Device SDK for Java

    AWS IoT Device SDK for Java

    Java SDK for connecting to AWS IoT from a device

    The AWS IoT Device SDK for Java enables Java developers to access the AWS IoT Platform through MQTT or MQTT over the WebSocket protocol. The SDK is built with AWS IoT device shadow support, providing access to thing shadows (sometimes referred to as device shadows) using shadow methods, including GET, UPDATE, and DELETE. It also supports a simplified shadow access model, which allows developers to exchange data with their shadows by just using getter and setter methods without having to serialize or deserialize any JSON documents. A new AWS IoT Device SDK is now available. It is a complete rework, built to improve reliability, performance, and security. We invite your feedback! The SDK is built on top of the Paho MQTT Java client library. Developers can choose from two types of connections to connect to the AWS IoT service.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 19
    AWS IoT Device SDK for Python

    AWS IoT Device SDK for Python

    SDK for connecting to AWS IoT from a device using Python

    The AWS IoT Device SDK for Python allows developers to write Python script to use their devices to access the AWS IoT platform through MQTT or MQTT over the WebSocket protocol. By connecting their devices to AWS IoT, users can securely work with the message broker, rules, and the device shadow (sometimes referred to as a thing shadow) provided by AWS IoT and with other AWS services like AWS Lambda, Amazon Kinesis, Amazon S3, and more. It is a complete rework, built to improve reliability, performance, and security. We invite your feedback! The SDK is built on top of a modified Paho MQTT Python client library. Developers can choose from two types of connections to connect to AWS IoT. For MQTT over TLS (port 8883 and port 443), a valid certificate and a private key are required for authentication. For MQTT over the WebSocket protocol (port 443), a valid AWS Identity and Access Management (IAM) access key ID and secret access key pair are required for authentication.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 20
    AWS IoT Fleet Provisioning Library

    AWS IoT Fleet Provisioning Library

    Client library for using AWS IoT Fleet Provisioning service

    The Fleet Provisioning library enables you to provision IoT devices without device certificates using the Fleet Provisioning feature of AWS IoT Core. For an overview of provisioning options available, see Device provisioning. This library has no dependencies on any additional libraries other than the standard C library, and therefore, can be used with any MQTT library. This library is distributed under the MIT Open Source License. This library has gone through code quality checks including verification that no function has a GNU Complexity score over 8, and checks against deviations from mandatory rules in the MISRA coding standard. Deviations from the MISRA C:2012 guidelines are documented under MISRA Deviations. This library has also undergone static code analysis using Coverity static analysis, and validation of memory safety through the CBMC automated reasoning tool.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 21
    AWS IoT SDK for JavaScript

    AWS IoT SDK for JavaScript

    SDK for connecting to AWS IoT from a device using JavaScript/Node.js

    A new AWS IoT Device SDK is now available. It is a complete rework, built to improve reliability, performance, and security. We invite your feedback! The aws-iot-device-sdk.js package allows developers to write JavaScript applications that access the AWS IoT Platform via MQTT or MQTT over the Secure WebSocket Protocol. It can be used in Node.js environments as well as in-browser applications. This package is built on top of mqtt.js and provides three classes: 'device', 'thingShadow' and 'jobs'. The 'device' class wraps mqtt.js to provide a secure connection to the AWS IoT platform and expose the mqtt.js interfaces upward. It provides features to simplify the handling of intermittent connections, including progressive backoff retries, automatic re-subscription upon connection and queued offline publishing with a configurable drain rate. Beginning with Release v2.2.0 of the SDK, AWS collects usage metrics indicating which language and version of the SDK is being used.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 22
    Aedes

    Aedes

    Barebone MQTT broker that can run on any stream server

    A high-performance MQTT broker for IoT applications, designed to be lightweight and scalable.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 23
    DEVS-Suite Simulator

    DEVS-Suite Simulator

    Component, CA, and CCA models; superdense time, DB repo, testing, etc.

    Integrated component-based and cellular automata (CA) Parallel DEVS simulator: https://acims.asu.edu/devs-suite/ OFFERS: 1) synchronized execution & animation, 2) run-time linear/superdense I/O & state trajectories, 3) Action Level Real-Time modeling & simulation, 4) model checking, 5) ABM, 6) CA & composable CA playback, 7) KIB interaction modeling, 8) hierarchical model libraries, 9) Black-Box testing & debugging, 10) PostgreSQL repository, 11) FMU (OpenModelica), 12) OSATE (AADL) with domain-specific models: NoC; SW/HW co-design, Service-Oriented Computing, cancer biology, Dynamic Structure, SOA DEVS, MIPS32 processors, and computer networks for education. Version: 7.0 [Jan `23], 6.1 [Apr. `21], 6 [Sep. `20] , 5 [Jul. `19], 4 [Mar. `18], 3 [Apr. `15], 2.1 [Feb. `09], 2 [`03] See CoSMoSim: https://acims.asu.edu/software/cosmos : hierarchical visual modeling, database model repository, families of models, statecharts, partial-code generation for XML/DEVS-Suite model
    Downloads: 13 This Week
    Last Update:
    See Project
  • 24
    imgFlasher

    imgFlasher

    Flash OS images to sdcards and usb drives

    imgFlasher has been built specifically for Embedded and IoT developers in order to flash OS images on SD cards and USB drives. Made primarily for Raspbian, Ubuntu, Debian, Yocto-based images but works with any kind of Linux distribution. imgFlasher is a portable software that doesn't require any installation. The process of flashing OS with imgFlasher is super simple and requires just 3 steps. (1) Choose img/zip file. (2) Choose drive to flash on. (3) Click on Flash. Recommended using for Raspberry Pi, Banana Pi, Odroid, BeagleBone, Nvidia Jetson, Tinkerboard, etc.
    Downloads: 17 This Week
    Last Update:
    See Project
  • 25

    SmartHomePanel

    Truly Open, Fully Customizable, and Universal Smart Home Control Panel

    SmartHomePanel is an open-source, wxWidgets-based dashboard engineered to run on any Linux SBC with a touchscreen (e.g., Raspberry Pi). It serves as a dedicated, lightweight control panel, designed for seamless communication with any Smart Home system, including popular hubs like Home Assistant and OpenHAB.
    Downloads: 9 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • 3
  • 4
  • Next