Open-source projects in Industrial & Building Automation that exist because someone reverse engineered a closed product. Most-starred: HslCommunication, plc4x, IoTClient, s7netplus, EMS-ESP32.
Search and filter this category →ESP32 firmware to read and control Bosch/Buderus/Nefit EMS and Heatronic boilers
ESP8266 bridge from Mitsubishi heat pumps (CN105 port) to MQTT
ESPHome component for AUX-based air conditioners via the reverse-engineered UART protocol
Monitor and control Siemens-based Brötje/Elco/Atlantic heating over the BSB/LPB bus
ESPHome component for Samsung HVAC units over the NASA/non-NASA RS-485 bus
ESP8266 firmware for Bosch/Buderus EMS and Heatronic heating equipment
ESP32 wired controller for LG HVAC units emulating the wall controller protocol
Reverse-engineered eBUS message definitions for Vaillant, Wolf and other heating devices
Home Assistant component for Panasonic Comfort Cloud air conditioners
ESP8266 firmware for the Nodoshop OpenTherm Gateway with MQTT and REST
ESP8266 Wi-Fi remote for Bestway Lay-Z-Spa hot tubs via the display bus
ESP32 Wi-Fi add-on for Itho ventilation using its I2C protocol
Daemon controlling Jandy Aqualink RS pool equipment over RS485
ESPHome custom firmware for Tion breezers using the reverse-engineered Tion BLE/UART protocol
ESP32 firmware to interact with Zehnder ComfoAir Q via CAN
Connects hot tubs with an IQ2020 control board to Home Assistant via the reverse-engineered RS485 bus
Ruby library for Balboa spa Wi-Fi module and RS-485 protocol
Async Python library for the Zehnder ComfoConnect LAN C protocol (ComfoAir Q)
ESPHome control of Zehnder ComfoAir Q over CAN bus
Python library for the Zehnder ComfoConnect LAN C protocol
C# industrial comms library covering Siemens, Mitsubishi, Omron, AB, Keyence and other PLC protocols
Apache PLC4X: drivers for S7, Allen-Bradley, Beckhoff, Modbus and other PLC protocols in Java/Go/C
.NET client for industrial protocols: Siemens S7, Mitsubishi MC, Omron FINS, Allen-Bradley
S7.NET+: .NET library that talks the Siemens S7comm protocol to Step7 PLCs
Portable C library for Allen-Bradley (CIP/PCCC) and Modbus PLC tag access
Pure-Python client for Siemens S7comm, the undocumented protocol of S7-300/400/1200/1500 PLCs
Communication test tools for vendor PLC protocols (Siemens, Mitsubishi, Omron and others)
Python library to read/write tags on Allen-Bradley ControlLogix/CompactLogix PLCs
Python EtherNet/IP library for Allen-Bradley Logix and SLC/MicroLogix PLCs, incl. undocumented services
.NET library to access Siemens PLCs and parse Step5/Step7 project files
Software implementation of the Chamberlain Security+ rolling-code garage door system
Documentation and implementation of the io-homecontrol radio protocol (Velux, Somfy)
Emulates a Somfy RTS remote with a 433.42 MHz transmitter
Homebridge plugin for non-myQ LiftMaster and Chamberlain openers via ratgdo
Emulates the Hörmann HAP 1 HCP2 bus module on ESP8266/ESP32 for garage doors
HomeKit firmware for the ratgdo32 board speaking the Chamberlain Security+ garage door protocol
Controls AM43 blind motors with an ESP32 over their BLE protocol
API and web interface for the nRF905 radio used to control Itho and similar ventilation and blinds
ESPHome component for io-homecontrol blinds and covers using the reverse-engineered radio protocol
Nice Bus-T4 gate automation protocol implementation for ESP devices
ESP firmware reading HAN port data from smart electricity meters to MQTT
Home Assistant sensor for Tauron eLicznik energy data via unofficial API
Reverse engineered schematics and interface software for the PZEM-004T power meter
ESPHome components including iNode BLE energy meter support
Home Assistant integration for Kamstrup 403 heat meters via the optical KMP protocol
Python library for the Wiener Netze smart meter private API
Retrieves energy data from a Powerpal meter reader over its reverse-engineered BLE protocol
Reverse engineered tools and docs for the Emerald Electricity Advisor
Implementation of the Kamstrup Meter Protocol (KMP)
Python library reading Kamstrup Multical 402 heat meters over the optical eye
Inkscape extension driving Silhouette vinyl cutters via their reverse-engineered USB protocol
Laser software for K40 (reverse-engineered M2 Nano/Lihuiyu), GRBL and fibre lasers
Pure-Python implementation of Heidenhain's LSV2 CNC control protocol
Open-source firmware for the CNC3018 offline controller
Reverse-engineered protocol and file format of Ruida laser controllers (RDWorks, USB, Ethernet)
Decoder and tooling for the scrambled RDWorks .rd laser file format
Inkscape extension to drive Ruida-based laser cutters directly
Notes on hacking the machine code of RuiDa laser controllers
Interpreter and renderer for Ruida .rd laser job files
Reverse engineering of the LaserWorks/RDCAM software from Shenzhen Reader Technology
Home Assistant component for Busch-Jaeger free@home via the SysAP
Eaton xComfort CKOZ-00/14 USB stick to MQTT gateway
ESPHome component that replaces the controller of a PHC home control system
TCP server on KUKA robots exposing variables via the OpenShowVar protocol
Unofficial control library for FANUC robot controllers