https://github.com/denizoner/mipower
A Bluetooth switch for turning on the Mi Box S without a remote controller in Home Assistant (inspired by @frlequ & developed with the assistance of @ChatGPT)
https://github.com/denizoner/mipower
bluetooth bluetoothctl custom-component hacs hassio hassio-addon hassio-addons hassio-integration hassio-repository home-assistant homeassistant mi-box mibox python vibe-code vibe-coded vibe-codeing
Last synced: 22 days ago
JSON representation
A Bluetooth switch for turning on the Mi Box S without a remote controller in Home Assistant (inspired by @frlequ & developed with the assistance of @ChatGPT)
- Host: GitHub
- URL: https://github.com/denizoner/mipower
- Owner: DenizOner
- License: mit
- Created: 2025-09-15T22:06:50.000Z (about 1 month ago)
- Default Branch: main
- Last Pushed: 2025-09-16T13:31:38.000Z (about 1 month ago)
- Last Synced: 2025-09-16T13:31:49.223Z (about 1 month ago)
- Topics: bluetooth, bluetoothctl, custom-component, hacs, hassio, hassio-addon, hassio-addons, hassio-integration, hassio-repository, home-assistant, homeassistant, mi-box, mibox, python, vibe-code, vibe-coded, vibe-codeing
- Language: Python
- Homepage:
- Size: 38.1 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# MiPower — Home Assistant custom integration
[](https://github.com/DenizOner/MiPower/releases)
[](https://www.home-assistant.io/)
[](https://hacs.xyz/)
[](https://hacs.xyz/)
[](https://github.com/DenizOner/MiPower/issues)
[](#license)**MiPower** is a focused Home Assistant custom integration that provides a switch platform to send wake/power signals to devices like Mi Box / Android TV boxes. It intentionally focuses on signaling (wake/power), not on long-lived pairing/remote control connections.
---
## Highlights
- Easy setup using existing `media_player` devices.
- Advanced setup for manual configuration (Display name, MAC, device selection).
- Full Options-flow support (options gear visible after setup).
- Per-entry coordinator model (each config entry has its own coordinator and options).
- `__pycache__` cleanup service available: `mipower.cleanup_pycache`.
- Diagnostics support and options for tuning debounce and connection behavior.---
## Requirements & Compatibility
- Home Assistant: tested with **2025.9.3**, but backwards compatibility starts from `2021.12.0` per manifest.
- Python dependency: `pexpect`.
- Platforms: `switch`.
- Integration type: local push / UI config flow.---
## Installation
### HACS (recommended)
1. Add this repository to HACS (Integrations → Custom repositories → add repo URL).
2. Install the integration from HACS.
3. Restart Home Assistant.### Manual
1. Copy the `custom_components/mipower/` folder into `config/custom_components/`.
2. Restart Home Assistant.---
## Quick Setup (UI)
1. Settings → Devices & Services → Add Integration → **MiPower**.
2. Choose between **Easy setup** (select a `media_player` device only) or **Advanced setup** (enter Display name, MAC, select device, and tune advanced options).
3. After creation, the **Options (gear)** is available on the integration panel to adjust parameters.---
## Entity Behavior
- Entity name format: `MiPower - `.
- Entity icon: `mdi:power`.
- Unique ID format: `mipower_` (e.g. `mipower_E0B655526C00`).
- Each config entry has a dedicated coordinator to support multiple devices and options per entry.---
## Diagnostics & Debugging
- Diagnostics available from the integration panel (entry-level).
- Service `mipower.cleanup_pycache` available under Developer Tools → Services.---
## Contributing & Issues
- Please file issues on GitHub: [Issues](https://github.com/DenizOner/MiPower/issues).
- Pull requests welcome — keep code modular and test changes against a recent Home Assistant instance.---
## License
This project is released under the **MIT License**. See the `LICENSE` file in the repo.