// the find
foxclever/Modbus
一个Modbus通讯协议栈
A C Modbus protocol stack supporting RTU master/slave, ASCII master/slave, and TCP client/server modes, covering function codes 0x01–0x10. Targets embedded developers — primarily STM32 — who need a reusable Modbus implementation they don't have to rewrite per project. Documentation is in Chinese.
Covers all the common function codes (01, 02, 03, 04, 05, 06, 0F, 10) — that's enough for 95% of real industrial use. Multi-master support on both serial and Ethernet links is a practical addition that most hobby-grade stacks omit. The separation into six distinct object types (RTU master/slave, ASCII master/slave, TCP client/server) keeps the API surface predictable. The STM32F4 example ships with the full HAL/CMSIS driver tree, so you can actually run it without hunting for dependencies.
Dead since August 2021 — the Modbus spec hasn't changed but embedded toolchains and HAL versions have, and there are no bug fixes in the queue. The documentation and README are Chinese-only, which cuts off most of the Western audience who might otherwise adopt it. DataObject.c/h are declared obsolete in the README with no migration guidance, which is a bad sign for API stability. No test suite of any kind — you're trusting the example project and your own hardware to find frame parsing bugs, and those tend to be subtle.