If youβre developing applications for the Xiaomi ecosystem, building firmware for Redmi or POCO smartphones, or integrating smart devices (such as Mi Band or Mi Robot Vacuum) into your projects, youβll need official tools, documentation, and access to APIs. The problem is that Xiaomi doesnβt always put all the information in a prominent place, and some resources are only available on request or through affiliate programs.
In this article, weβve gathered all the relevant sources for developers (2026), including official portals, hidden GitHub repositories, undocumented APIs, and communities where you can get support, and weβll also look at how to access closed SDKs, what tools you need to work with MIUI firmware, and where to look for examples of code to interact with Mi Home devices.
Important: Some of the resources require registration with the Xiaomi Developer Platform or proof of developer status, we will indicate where this is needed and we will advise you on how to speed up the approval process.
Xiaomiβs Official Resources for Developers
Let's start with legal sources that are backed by the company, and that's the only way to get access to full documentation and technical support, but some of the sections can be hidden behind registration or NDA.
Major platforms:
- π Xiaomi Open Platform (dev.mi.com) is the main portal for developers of applications for the development of the platform. MIUI And Xiaomi services. You can find them here. SDK smartphone, API Cloud Services and Testing Tools.
- π€ Mi AIoT Developer Platform (iot.mi.com) β a platform for working with smart devices (lamps, robot vacuum cleaners, sensors.
- π± MIUI ROM Developer (new.c.mi.com) β a section with firmware and customization tools MIUI. Useful for creating custom recovery and modified OS versions.
- π§ Xiaomi Cloud API β Xiaomi Cloud documentation (available after approval of application by Xiaomi Developer Console).
β οΈ Note: On dev.mi.com, part of the sections (e.g. Mi Push) SDK Mi Account SDK) It opens only after you submit an application describing the project, without which you will see the message "Access Denied".
How to Access Closed SDKs and APIs
Many Xiaomi tools (such as the Mi Fit SDK or Mi Home Open API) are not available for download without prior approval.
- Register at dev.mi.com with your Mi Account (not through Google/Facebook).
- Go to the section "Developer Console" β "Apply for SDK" Select the desired package (for example, Mi Push or Mi). AI Speaker).
- Fill out the project description form in English, specify: - purpose of use of SDK; - platform (Android/iOS/web); - approximate amount of traffic (if it is about API).
- Wait for a response (usually 3-7 days) If the project is approved, you will be sent a link to download the SDK and API keys.
π‘ Tip: If you're rejected, try reapplying with a more detailed description. For example, instead of "I want to make an app for Mi Band," write: "Developing a fitness tracker for athletes with Mi Band 8 integration and sleep analytics. Planned release β Q3 2026, audience β 10,000 users".
What if access is not approved?
β οΈ Attention: Some SDK (For example, Mi Pay or Mi Credit, available only to companies with a registered office in China or Xiaomi partners. If you are an independent developer, consider alternative solutions (see section on informal ones). API).
Unofficial sources: GitHub, forums and reverse engineering
If the official channels did not help, you can contact the developer community, which has already dismantled the Xiaomi data exchange protocols or posted undocumented APIs.
- π GitHub repositories: com.xiaomi_hybrid β Mi Home protocols are reversed. mi-fit is an informal client for Mi Band. mihome-binary-protocol is a specification for a binary protocol for smart devices.
- π¬ Forums and chat rooms: XDA Developers β Xiaomi sections (e.g. Xiaomi Redmi Note) 12 or MIUI Development). Telegram chat @miuidev β firmware-moding.
- π Reverse engineering tools: scrcpy - for debugging MIUI through ADB. Frida β Analysis of Mi Home or Mi Fit app traffic.
Important: using unofficial APIs may violate Xiaomiβs user agreement. Some methods (for example, bypassing authorization through tokens) lead to account blocking, we recommend first try legal methods, and resort to reverse engineering only for research purposes.
Study the repository license (not all projects allow commercial use)
Check the relevance of the code (some Xiaomi protocols change every 1-2 years)
Create a Mi Account Test Account (do not link to the main account)
Use it. VPN (Some Xiaomi servers block requests from certain regions)-->
Documentation on firmware and custom recovery
If you are developing firmware for Xiaomi devices (for example, porting LineageOS or creating modified versions of MIUI), you will need:
- Sources of the kernel - Xiaomi puts them on GitHub in accordance with the GPL license. Links can be found on the official firmware page (section "Kernel Source").
- The tools to unlock the bootloader are the official Mi Unlock Tool (en.miui.com/unlock) that requires an account binding and 7-15 days waiting.
- Custom recovery, like TWRP or OrangeFox, is searched for updated builds on XDA or Telegram channels.
Example of commands to unlock the bootloader via ADB:
fastboot oem unlock
fastboot flash recovery twrp.img
fastboot boot twrp.imgβ οΈ Note: Since 2023, Xiaomi has tightened its policy of unlocking the bootloader for new models (for example, Redmi Note 13 or Xiaomi 14).Some devices now require an authorized account (account with confirmed developer status).
| The device | Unlocking Status (2026) | Is an authorized account required? | Alternative methods |
|---|---|---|---|
| Redmi Note 12 | β Permitted. | β No. | Official Mi Unlock Tool Officially |
| Xiaomi 13T | β Permitted. | β Yes, for some regions) | Through the partnership program |
| POCO F5 | β Permitted. | β No. | β |
| Xiaomi 14 Ultra | β οΈ Limited. | β Yes. | EDL-Regime (requires an authorized account) |
API for smart devices (Mi Home, Mi Band, robot vacuum cleaners)
There are several approaches to interacting with the Mi Home ecosystem (Lights, Sensors, Vacuum Cleaners):
- The official Mi Home Open API is available after registration on iot.mi.com, allowing you to manage devices through the cloud, but requires user authorization.
- Local MiIO protocol β many devices (e.g. Mi Robot Vacuum or Mi Air Purifier) support management over a local area network without a cloud. Documentation: miot-spec.org.
- Informal libraries: π Python-miio β Python library for MiIO. π¦ Node.js mihome β for integration with Home Assistant.
Example of Mi Robot Vacuum request via MiIO:
miio --ip 192.168.1.100 --token YOUR_TOKEN miio infoπ‘ Useful tip: The deviceβs token can be accessed through the Mi Home app using this script. Donβt pass the token to third parties β this is equivalent to transferring a password from the device!
π‘
The MiIO local protocol is faster than the cloud API and does not depend on Xiaomi servers, but to use it, the device must be on the same network as your application.
Debugging and testing tools
For development under MIUI or testing firmware, the following tools are useful:
- π§ ADB/Fastboot β standard Android debugging tools, like the command to get logs: adb logcat | grep -i "miui"
- π± Mi Debug Tool β official utility from Xiaomi for log collection and diagnostics (available in Developer Console).
- π₯οΈ Emulators MIUI β Xiaomi doesnβt provide official emulators, but you can use Waydroid to run it. MIUI Linux.
- π οΈ Xiaomi Flash Tool β for firmware devices in mode EDL (You can download it here).
β οΈ Attention: When working with EDL-In the mode (emergency firmware) there is a risk of "bricking" the device if you use the wrong version of the firmware:
| Model | Code name | Supported by EDL | Risks. |
|---|---|---|---|
| Redmi Note 11 | spes | β Yes. | Authorized account required |
| POCO X3 Pro | vayu | β Yes. | Possible loss of IMEI |
| Xiaomi 12 | cupid | β οΈ Partially. | Blocking with incorrect firmware |
Community and support for developers
If you are facing a problem that you cannot solve on your own, contact one of these communities:
- π’ Xiaomi official forum (c.mi.com) β a section for developers (Developer Discussion").
- π€ Telegram chats: @miuidev β firmware and moding. @xiaomi_dev β general issues of development.
- π GitHub Discussions in repositories like com.xiaomi_hybrid.
- π§ Official support β write to the developer@xiaomi.com (The answer comes in the course 3β5 days).
π‘ Advice: When applying for support always attach:
- Error log (adb logcat);
- device model and MIUI version;
Screenshots (if we are talking about the interface).
It will speed up the solution.