Home Assistant custom integration for Moonside smart lights (Lighthouse, Neon, etc.) using Bluetooth Low Energy (BLE).
- Auto-discovery: Automatically discovers Moonside devices via Bluetooth
- Full RGB Control: Set any color with brightness control
- 40+ Built-in Effects: Rainbow, Fire, Wave, Beat, Gradient, Twinkle, Lava, and more
- State Restoration: Restores previous state after Home Assistant restart
- Local Control: No cloud required - direct BLE communication
- Moonside Lighthouse
- Moonside Neon (likely compatible, needs testing)
- Other Moonside devices using Nordic UART Service over BLE
- Open HACS in Home Assistant
- Click on "Integrations"
- Click the menu (⋮) and select "Custom repositories"
- Add
https://github.com/skeltavik/moonsideas an Integration - Click "Install"
- Restart Home Assistant
- Copy the
custom_components/moonsidefolder to your Home Assistantconfig/custom_componentsdirectory - Restart Home Assistant
- Go to Settings → Devices & Services → Add Integration
- Search for "Moonside"
- Select your discovered device or enter the MAC address manually
- The light will appear as a new entity
- On/Off: Toggle the light
- Brightness: 0-100%
- Color: Select any RGB color
The integration includes 40+ built-in effects:
| Effect Category | Available Effects |
|---|---|
| Rainbow | Rainbow One, Rising Rainbow, Blending Rainbow, Color Wheel |
| Fire | Night Fire, Green Fire, Ghost Fire, Rainbow Fire, Magic Fire |
| Lava | Glowing Lava, Blue Lava, MacMac, Cool Sky, Christmas Snow |
| Gradient | Green Land, Christmas Blend, Purple Cake, Purple Dream, and more |
| Beat | Dancing Beat, Bouncing Stars, Shining Beat, Dancing Ocean, Vibe Beat |
| Theme Patterns | Blue Raspberry, My Moon, Wire Tap, Raining Blue, Twinkle Star, and more |
Select effects from the "Effect" dropdown in the light entity.
This integration uses the reverse-engineered BLE protocol for Moonside devices:
- Service: Nordic UART Service (UUID:
6e400001-b5a3-f393-e0a9-e50e24dcca9e) - Commands (text-based):
LEDON/LEDOFF- Power controlBRIGHXXX- Brightness (0-120)COLORRRRGGGBBB- RGB color (set brightness separately)THEME.*- Various animated effectsPIXEL,ID,BRIGHTNESS- Individual pixel control
- Home Assistant 2024.1.0 or newer
- Bluetooth adapter with BLE support
- Moonside device within Bluetooth range
- Ensure your Moonside light is powered on and in pairing mode (blinking)
- Check that your Home Assistant host has a working Bluetooth adapter
- Try moving the device closer to your Home Assistant host
- Use manual configuration with the MAC address if auto-discovery fails
- Ensure no other device (phone app) is currently connected to the light
- Check Home Assistant logs for BLE errors
- Restart the Moonside light by unplugging and plugging it back in
- Reverse engineering research by TheGreydiamond
- Built using bleak for BLE communication
MIT License