head to head · open source
python-miio vs IRremoteESP8266
python-miio has 4,305 GitHub stars, 601 forks, 313 open issues and last shipped 2 months ago. IRremoteESP8266 has 3,601 stars, 933 forks, 105 open issues and last shipped 28 days ago. python-miio leads on adoption by 20% (4,305 vs 3,601 stars). python-miio is written in Python under GPL-3.0; IRremoteESP8266 is written in C++ under LGPL-2.1. python-miio has attracted 14% as many forks as stars, IRremoteESP8266 26%. IRremoteESP8266 was the more recently maintained of the two, and both are self-hostable with no licence fee. The two share 1 topic tag (home-automation), so they are genuine substitutes rather than adjacent tools.
Two open source projects, one decision. Both are free and self-hostable — the differences are community size, license terms, language stack and release pace.
← all 20902 open source comparisons
Side by side
| python-miio | IRremoteESP8266 | |
|---|---|---|
| GitHub stars | ★ 4.3K | ★ 3.6K |
| License | GPL-3.0 | LGPL-2.1 |
| Written in | Python | C++ |
| Last push | 2026-07-25 | 2026-08-23 |
| Forks | ⑂ 601 | ⑂ 933 |
| Self-hosting | Yes | Yes |
| Data ownership | Your server | Your server |
pick python-miio if
- You weight community size — 4.3K stars and counting
- You want the GPL-3.0 license terms
- Your stack matches Python
- You value the larger contributor base for long-term maintenance
pick IRremoteESP8266 if
- You want the IRremoteESP8266 feature set and don't need the biggest community
- You prefer the LGPL-2.1 license terms
- Your stack matches C++
- You evaluated both and IRremoteESP8266 fits your workflow better
About python-miio
python miio is a Python library and console tool for controlling Xiaomi smart appliances. It supports devices using Xiaomi's miIO and MIoT protocols, and it provides programmatic access through Python and command line access through miiocli. The project lives in the Python home automation ecosystem, and its topics connect it to Home Assistant and Xiaomi smart home control.
read the full python-miio overview →
About IRremoteESP8266
IRremoteESP8266 is an open source C++ library for the Arduino framework that lets ESP8266 and ESP32 boards send and receive infrared signals. It lives in the embedded home automation and HVAC control ecosystem and is based on Arduino IRremote. It uses common 940 nm infrared LEDs and common infrared receiver modules, including TSOP{17,22,24,36,38,44,48} demodulators.
read the full IRremoteESP8266 overview →
More in Miscellaneous
Related comparisons
More Internet of Things (IoT) projects
Compare either of these against the rest of the Internet of Things (IoT) field.
Frequently asked questions
Is python-miio or IRremoteESP8266 more popular?
python-miio has 4,305 GitHub stars and IRremoteESP8266 has 3,601. python-miio has the larger community by that measure.
Are python-miio and IRremoteESP8266 free?
Both are open source. python-miio is licensed under GPL-3.0 and IRremoteESP8266 under LGPL-2.1. Neither carries a licence fee.
What is the difference between python-miio and IRremoteESP8266?
python-miio is written in Python and IRremoteESP8266 in C++. The practical differences are community size, licence terms, language stack and release cadence — all compared in the table above.
Which should I choose, python-miio or IRremoteESP8266?
Choose python-miio if you want the larger community (4,305 stars) or its GPL-3.0 licence terms. Choose IRremoteESP8266 if its feature set, stack or LGPL-2.1 licence fits better. Both are self-hostable.