I managed to hook my Marpou ceiling lamp (works with LampSmart Pro app) to an ESP32 via a custom component I developed. Lampify was a good start, but I ended up reversing the app and building the component from scratch based on that. The code is quite unfinished, but here it is, nonetheless: GitHub - aronsky/esphome-components: Custom components for ESPHome
Known issues:
- Only tested with Marpou Ceiling CCT light (definitely doesn’t support RGB lights currently, but that could be added in the future).
- All lights are controlled at the same time (does not support controlling different lamps individually - need help with ESPHome internals to figure this one out).
How to try it:
- Create an ESPHome configuration that references the repo (using
external_components) - Add a light entity to the configuration with the
lampsmart_pro_lightplatform - Build the configuration and flash it to an ESP32 device (since BLE is used, ESP8266-based devices are a no-go)
- Add the new ESPHome node to your Home Assistant instance
- Use the newly exposed service (
esphome.<esphome-node-name>_pair) to pair with your light (call the service withing 5 seconds of powering it with a switch. - Enjoy controlling your Marpou light with Home Assistant!