30 open-source projects similar to stephane/libmodbus, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Libmodbus alternative.
nghttp2 is a suite of low-level C libraries and tools designed for implementing the HTTP/2 protocol. It provides a memory-efficient implementation of the protocol's core logic, including framing, stream multiplexing, and flow control. The project includes a dedicated library for HPACK header compression and decompression to reduce network bandwidth. It also provides a toolset for analyzing network traffic and benchmarking server performance, including throughput and latency measurements. Its broader capabilities cover protocol implementation and traffic management, including ALPN connection
Terminus is a multifunctional terminal emulator and connection manager designed for managing remote server shells and local hardware device connections. It functions as a customizable shell interface and a cross-platform serial client, supporting communication via SSH, Telnet, and serial ports. The application features an extensible system that allows the integration of third-party plugins, such as AI assistants and additional connectivity tools. It includes a dedicated SSH connection manager with support for jump hosts, port forwarding, and the storage of sensitive credentials within encrypt
pyserial is a cross-platform Python library for reading and writing binary data to serial ports and hardware devices. It provides a serial port enumeration tool for identifying available hardware and retrieving device path metadata. The project includes a network implementation for controlling remote serial port functions and signal lines over TCP/IP via the RFC 2217 standard. It also features a serial-to-TCP bridge for forwarding raw data between local ports and network sockets, as well as a specialized interface for managing half-duplex RS485 communication and RTS toggling. The library cov
Costrict is an AI software engineering agent and coding assistant designed for enterprise-grade development. It functions as a multi-model AI orchestrator that generates, completes, and reviews code, while serving as a remote development environment that bridges browser interfaces with remote directories for file management and terminal execution. The platform distinguishes itself through an AI code review system that utilizes multi-model verification and repository indexing to ensure code quality. It employs a structured agent approach that decomposes complex natural language requirements in
open62541 is an open-source implementation of the OPC Unified Architecture standard, providing a complete stack for industrial automation and data exchange. It functions as both an OPC UA server and client, enabling the creation of an object-oriented address space to model physical industrial assets and their relationships. The project is designed for versatility across diverse hardware, offering a C99 library that can be deployed to both cloud servers and resource-constrained embedded environments. It distinguishes itself through a pluggable network layer and interface-based security backend
Logicanalyzer is a digital logic analyzer and signal visualizer designed for capturing and analyzing high-speed digital signal transitions. It functions as a protocol decoder that translates raw digital signals into human-readable frames and operates as a network capture tool to acquire data remotely over TCP. The system is an extensible protocol analyzer, allowing the development of custom decoders and renderers for proprietary protocols through external libraries. It supports remote hardware capturing via WiFi and provides a mechanism to increase available digital channels through multi-dev
Asterinas is a memory-safe operating system kernel designed to prevent data races and memory corruption. It functions as a Linux-ABI compatible kernel, enabling the execution of existing Linux binaries and container workloads while providing a declarative operating system distribution model. The project distinguishes itself by acting as a virtual machine container host and a confidential computing guest OS, allowing it to run within hardware-isolated Trusted Execution Environments such as Intel TDX. It implements a minimal trusted computing base by isolating unsafe low-level operations and se
ejabberd is a multi-protocol communication gateway and scalable server that implements XMPP for instant messaging and presence. It serves as a federated messaging platform, enabling interoperable communication and user discovery between different remote servers. The project functions as an MQTT message broker for lightweight IoT device communication and a SIP signaling server for managing voice and multimedia signaling traffic. It allows for the hosting of multiple domains on a single instance using virtual hosting to isolate configurations and prevent username conflicts. The system provides
Innernet is a WireGuard VPN mesh orchestrator and control plane that automates the deployment of encrypted tunnels between distributed peers. It functions as a virtual private network that coordinates endpoint discovery and distributes network configurations from a centralized server to establish a private overlay network. The system differentiates itself through a structured peer management lifecycle, using single-use invitation files for secure onboarding and cryptographic key exchange. It provides granular network segmentation by organizing peers into named CIDR blocks, allowing administra
Syncthing Android is a mobile application and service wrapper that enables decentralized, peer-to-peer file synchronization on the Android platform. It functions as a distributed data sync tool that mirrors folders across multiple devices without the need for a central cloud server. The project provides a mobile interface to manage a synchronization instance, utilizing a service-wrapper architecture to handle the lifecycle and configuration of the underlying synchronization binary. It ensures secure data exchange through TLS encryption, certificate-based identity verification, and password-pr
esptool is a Python-based serial utility designed for flashing firmware, configuring hardware fuses, and provisioning Espressif system-on-chip devices. It functions as a serial firmware flasher and hardware provisioning tool that interacts with chips over a serial connection to enable program execution and device setup. The tool provides specialized capabilities for managing Espressif hardware, including the ability to set permanent electronic fuses to lock security settings and define hardware-level configurations. It also features a serial communication bridge that routes network traffic to
Gobot is a robotics framework for the Go programming language designed for developing robotics, drones, and IoT applications. It provides a hardware abstraction layer with standardized drivers to interact with GPIO, I2C, SPI, and PWM interfaces across various single-board computers and microcontrollers. The framework functions as an IoT device orchestrator and BLE device manager, enabling the coordination of multiple sensors, actuators, and Bluetooth Low Energy peripherals. It includes specialized interfaces for drone control, allowing for the management of flight maneuvers and video streams
This project is a Node.js serial port library that provides a JavaScript interface for reading and writing data to hardware serial ports. It functions as a low-level driver and hardware communication library designed to exchange data streams between a computer and external hardware devices. The library supports cross-platform serial communication on Linux, macOS, and Windows. It enables the establishment of data connections between high-level applications and embedded controllers, microcontrollers, or other hardware devices. The capability surface covers hardware integration for robotics con
Open-IM-Server is an instant messaging server and cross-platform messaging backend designed for real-time text and media communication. It provides a distributed chat architecture that coordinates user sessions and group communications across multiple server nodes to support millions of concurrent users. The system features a scalable message distribution model that utilizes asynchronous message pipelines and distributed queueing to maintain reliability during traffic spikes. It employs multi-level data caching across local memory and distributed stores to reduce latency and uses a document-b
blinker-js is an IoT device communication framework and Node.js library designed to manage bidirectional data exchange between embedded hardware and remote servers or local networks. It functions as an MQTT hardware integration tool that links single-board computers to IoT clouds for remote management and control. The project provides a virtual device widget manager to synchronize hardware state with cloud-based user interface components. This system allows for the mapping of remote UI identifiers to internal software logic, enabling remote IoT control through virtual buttons and input fields
Pyrogram is an asynchronous Python framework for interacting with the Telegram MTProto API. It serves as both a bot framework and a user client library, providing a concrete implementation of the MTProto protocol for secure communication with Telegram servers. The library distinguishes itself by providing a high-level wrapper layer that abstracts complex protocol methods into Python functions, while still allowing for the execution of raw API functions and low-level peer resolution. It supports multi-client concurrency, enabling the management of several user or bot identities within a single
PhoneSploit-Pro is an Android exploitation and remote administration toolkit. It provides a system for remotely controlling Android devices and extracting data using the Android Debug Bridge protocol. The project integrates with Metasploit to automate the creation and installation of payloads, establishing persistent command-and-control sessions. It also includes a network device scanner to identify active Android hosts on local networks by probing TCP ports. The toolkit covers a broad range of administrative and forensic capabilities, including remote shell execution, application management
This project is a tutorial and framework for building a low-level, bare-metal operating system from scratch using the Rust language. It focuses on ARMv8 kernel development specifically for the Raspberry Pi 3, providing the resources necessary to implement a monolithic kernel that runs directly on hardware without an underlying operating system. The project distinguishes itself by providing a complete embedded cross-compilation suite within a containerized environment to ensure consistent builds. It includes a dedicated kernel deployer that uses a serial interface and chainloader to load and b
Arduino CLI is a command line interface for compiling, uploading, and managing libraries and board cores for Arduino-compatible hardware. It functions as a microcontroller toolchain manager and hardware programming tool, providing utilities to discover and install the platform definitions and compilers required for various hardware architectures. The project features an RPC-enabled development daemon that allows external programs to trigger internal tool operations and manage automated electronics workflows programmatically. It also includes an interactive hardware debugger for real-time trou
Johnny-Five is a JavaScript robotics framework and microcontroller hardware interface designed for programming robots and IoT devices. It provides a standardized library for managing pins, motors, and displays across various microcontroller platforms, allowing developers to control sensors and actuators using a consistent JavaScript API. The framework is distinguished by its use of a plugin-based hardware abstraction system, which enables communication with diverse hardware platforms and protocols. It supports real-time hardware manipulation and debugging through a read-eval-print loop that a
lan-mouse is a software KVM switch and networked peripheral controller that allows a user to share a single keyboard and mouse across multiple computers over a local area network. It functions as a cross-platform input sharer, capturing local peripheral events and relaying them to remote hosts for simulation at the operating system level. The system secures remote input control using a TLS-encrypted transport layer to prevent the interception of keystrokes and pointer data. Access is managed through fingerprint-based device authorization, which validates remote connections by matching unique
OctoPrint is a web-based control panel and Python-based hardware server for managing 3D printers. It functions as a G-code remote controller that sends commands to printer firmware over a persistent USB serial connection, allowing users to operate hardware and monitor print jobs through a browser. The project is an extensible hardware management platform that utilizes a plugin-based system. This architecture enables the addition of third-party functionality and custom extensions to modify core behavior and expand the system's remote control capabilities. The platform covers remote printer ma
Tabby is a cross-platform terminal emulator and desktop application suite designed for managing command-line workflows and remote infrastructure. It provides a comprehensive environment for terminal session orchestration, allowing users to organize multiple active sessions through split panes and custom layouts. The application functions as a secure remote connection manager, supporting advanced authentication, port forwarding, and persistent network sessions via an asynchronous protocol layer. The project distinguishes itself through a modular plugin architecture that enables users to extend
iNAV is flight control firmware designed to manage the stability, movement, and flight dynamics of multirotors, fixed-wing aircraft, and rovers. It serves as an autonomous flight controller and GPS navigation software capable of executing waypoint missions and maintaining position and altitude hold. The system integrates GPS and compass data to enable autonomous navigation and automatic return to home sequences during signal loss or sensor failure. It includes an on-screen display generator to render real-time vehicle status and warnings directly onto a pilot video feed, alongside a flight te
01 is a voice-to-code agent and language model voice interface framework that enables natural language control of computers and devices. It functions as a real-time audio streaming server and a cross-platform voice client, translating spoken instructions into executable code to automate software, manage files, and browse the web. The system supports both local and cloud-based language models, alongside local or hosted speech-to-text and text-to-speech engines. It is designed for custom hardware integration, providing the means to build embedded AI voice controllers using microcontrollers like
Nannou is a creative coding framework for Rust designed for building interactive visual and audio sketches. It provides a loop-based API with hardware-accelerated 2D and 3D rendering, serving as a toolkit for generative art production and multimedia installation design. The framework is distinguished by its comprehensive hardware communication interface, which bridges software with physical devices via MIDI, OSC, DMX, serial, and laser DAC protocols. It also includes specialized projection mapping tools for warping visual output to fit non-standard physical surfaces and a dedicated GPU shader
gdext provides a set of language bindings for writing high-performance native game logic in Rust for the Godot 4 engine. It serves as a framework for creating native engine extensions and custom classes via the GDExtension library, allowing developers to extend core engine functionality without recompiling the engine source code. The project includes a dedicated Rust WebAssembly toolchain to compile native logic into modules for execution in web browsers. This system supports WebAssembly-compatible compilation with specific configurations for web threading and module debugging. The toolkit c
This project is a collection of minimal operating systems, bootloaders, and hardware drivers used to demonstrate low-level x86 system programming and hardware interfacing. It serves as a kernel development toolkit and a system programming lab designed for testing architecture concepts and hardware behavior within a system emulator. The repository provides reference implementations for creating bootable disk images and loading kernel stages. It includes guides for implementing protected mode transitions, memory paging, interrupt descriptor tables, and symmetric multiprocessing on x86 hardware.
Reticulum is a decentralized networking stack that enables encrypted, peer-to-peer communication over diverse physical mediums without relying on central infrastructure or IP protocols. It uses self-sovereign cryptographic identities for routing and authentication, replacing traditional IP addresses with collision-free globally unique addresses that require no central coordination. Every packet is encrypted by default using ephemeral key exchanges with forward secrecy, and unencrypted traffic is dropped as invalid. The stack unifies heterogeneous transport mediums—including LoRa radio, packet
Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a