finds.dev← search

// the find

god-jason/iot-master

★ 837 · JavaScript · GPL-3.0 · updated Jul 2026

物联大师是开源免费的物联网平台,集成了标准Modbus和主流PLC等多种协议,支持数据采集、公式计算、定时控制、自动控制、异常报警、流量监控、Web组态、远程调试等功能,适用于大部分物联网和工业互联网应用场景。

IoT Master is a Go-based industrial IoT platform that speaks Modbus, Siemens S7, Mitsubishi MELSEC, Omron FINS, and a handful of Chinese utility meter protocols. It runs as a single binary (12MB RAM claimed), uses an internal MQTT bus for plugin communication, and targets factory-floor and building automation scenarios. The primary audience is Chinese industrial integrators who need a self-hosted, protocol-heavy SCADA-lite that doesn't require a cloud subscription.

The single-binary deployment with a 12MB RAM floor is genuinely useful for edge deployments on cheap industrial PCs or ARM boards where resource headroom is scarce. Using MQTT as the internal plugin bus is a sensible architecture — plugins decouple cleanly and you can debug the inter-plugin traffic with any MQTT client. The IEC Structured Text parser in `plc/st/` (with lexer, parser, and Lua transpiler) is an ambitious and real piece of work, not something you see in most OSS IoT platforms. GoReleaser + GitHub Actions CI means there's an actual release pipeline rather than 'clone and pray'.

The license is GPLv3 with a commercial-use restriction bolted on top in the README ('产品仅限个人免费使用,商业需求请联系我们'), which means it's effectively source-available for production use — that's a material gotcha for anyone evaluating it for a commercial deployment. The protocol support matrix has more unchecked boxes than checked ones: AB DF1, Delta, IEC 104, BACnet, and most of the Chinese utility protocols are listed but unimplemented, so the breadth implied by the topic tags doesn't match the actual code. Documentation is almost entirely Chinese with no English equivalent, which makes it a non-starter for any team outside that ecosystem. The frontend is Angular with plain JS page files under `pages/` — no TypeScript, no component framework discipline — so the UI codebase is harder to maintain than the Go backend.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →