Skip to content

monty68/uniled

Repository files navigation

hacs_badge BuyMeCoffee GitHub Release GitHub Activity License

HA UniLED - The Universal Light Controller

UniLED supports the following range of BLE LED controllers:

📱LED Chord

  • SP107E - SPI RGB(W) Controller

📱LED Hue

  • SP110E - SPI RGB(W) Controller

📱BanlanX

  • SP601E / SP602E / SP608E - Multi Channel SPI RGB Controllers
  • SP611E - SPI RGB Controller
  • SP613E - PWM RGB Controller
  • SP614E - PWM RGBW Controller
  • SP6117 - SPI RGBW Controller
  • SP620E - USB SPI RGB Mini Controller
  • SP621E - Mini SPI RGB Controller
  • SP623E - Mini PWM RGB Controller
  • SP624E - Mini PWM RGBW Controller
  • SP630E - PWM/SPI RGB, RGBW, RGBCCT Controller
  • SP631E / SP641E - PWM Single Color Controllers
  • SP632E / SP642E - PWM CCT Controllers
  • SP633E / SP643E - PWM RGB Controllers
  • SP634E / SP644E - PWM RGBW Controllers
  • SP635E / SP645E - PWM RGBCCT Controllers
  • SP636E / SP646E - SPI Single Color Controllers
  • SP637E / SP647E - SPI CCT Controllers
  • SP638E / SP648E - SPI RGB Controllers
  • SP639E / SP649E - SPI RGBW Controllers
  • SP63AE / SP64AE - SPI RGBCCT Controllers

💡Hints and Tips

  1. For those devices that support "Effect Length", set the length to the number of LEDS.

🧐 Notes:

  1. These devices only support a single bluetooth connection at any one time. If you connect via the app, then HA will not be able to connect and visa versa, when HA is connected and controlling the device, you will not be able to connect to it via the app.
  2. For those devices that support custom effects, such as the SP630E, UniLED only supports selecting the custom effect, you will have to disable the device in HA and use the android or IOS app to configure it first, then renable in HA.
  3. HA will report certain entities, such as Effect Speed as being unavailable when the chosen effect does not support it, for example when using a solid effect, the effect speed will show as unavailable until a dynamic effect is selected.

📱Hao Deng

Basic support for Hao Deng/Zengge BLE Mesh devices.


🚀 Installation

HACS Automated Installation

You can install this component through HACS to easily receive updates.

After installing HACS, visit the HACS Integrations pane and add https://github.com/monty68/uniled as an Integration by following these instructions. You'll then be able to install it through the Integrations pane.

Manual Installation

  1. Using the tool of choice open the directory (folder) for your HA configuration (where you find configuration.yaml).
  2. If you do not have a custom_components directory (folder) there, you need to create it.
  3. In the custom_components directory (folder) create a new folder called uniled.
  4. Download all the files from the custom_components/uniled/ directory (folder) in this repository.
  5. Place the files you downloaded in the new directory (folder) you created.
  6. Restart Home Assistant
  7. In the HA UI go to "Settings" -> "Devices & Services" -> "Integrations" click "+" and search for "Universal Light Controller"

✍️ Adding Devices and Model Identification Issues

UniLED does it's best to identify the exact model through a number of different mechanisms, however if you are having difficulty adding a device, especially where it fails to identify the model. Then, first try using the applicable Android/IOS app and ensure the device name is set to match the devices model then attempt adding the device into Home Assistant. If it still fails, enable debugging (see below) in Home Assistant, re-attempt adding the device, then open an issue attaching the debug log output to assist with further invetigation.

🪲 Debugging

To debug the integration, add the following to your configuration.yaml

logger:
  default: warning
  logs:
    custom_components.uniled: debug

🙋 Contributions are always welcomed!

If you want to contribute to UniLED, please read the Contribution guidelines

🎉 Acknowledgements

SleepyNinja for the great work deciphering and developing code for Zengge BLE Mesh devices and which has been used as a basis to implement support in UniLED.