Control de dispositivos de sincronización de aura a través de WLED
Recientemente imprimí 3D las luces de pared que se muestran en el video y quería sincronizarlo con mi RGB de escritorio, ya que están cerca ellas en mi escritorio. Probé Diyhue con la aplicación Armory Crate, ya que puede sincronizarse con un puente de tono, pero solo admite los modos de 'ciclo de color' y 'ciclo' y ni siquiera funcionó ya que Philips cambió su API y las buenas personas de Diyhue todavía están trabajando en Es (gran proyecto por cierto) luego probé OpenRGB, lo que habría hecho posible con algún tipo de proxy MQTT, pero desafortunadamente no admitió mi DRAM Ballistix crucial específica. Luego me mudé a instalar Wled en las luces de la pared y comencé este proyecto para controlar Mi escritorio también se ilumina con WLED para que pueda aprovechar las integraciones de TE con Assitant Home, los increíbles efectos WLED, la sincronización en tiempo real, etc.
El proyecto utiliza la ARUS AUSUS AURA SDK V3.1 y necesita la instalación de "servicio de iluminación", realmente no pude encontrar un instalador independiente para que incluso pensara que la guía en el enlace SDK lo menciona, sin embargo, se instala automáticamente con caja de arsenal, así que Tal vez instalarlo y luego desinstalarlo manteniendo el servicio de iluminación "
La aplicación del cliente se comunica con un ESP8266 (WEMOS D1 MINI) a través de la serie para obtener datos LED de WLED y requiere una versión WLED personalizada que agrega estas capacidades de salida en serie disponibles en WLED con Serial Out (solicitud de solicitud pendiente) que puede compilarse y flashear usando La guía de compilación de la Guía WLED o si está utilizando el WEMOS D1 Mini, tengo mi binario compilado en lanzamientos
Al ejecutar la aplicación, debería ver una ventana similar a esta (ventana oculta al comenzar desde la carpeta de inicio o con nowindow arg)
La lista de dispositivos está en orden por lo que puedo decir, la forma en que funciona el SDK es que devuelve el recuento total de luces asociadas con un determinado dispositivo, pero no considera que todos se usen. En mi caso, solo tuve 21 LED en la dirección 1 y nada conectado a la dirección 2, puede descubrirlo contando o siguiendo el siguiente paso y seguir intentándolo hasta que todas las luces funcionen
Para configurar WLED para controlar sus luces, debe establecer WLED a la cantidad total de luces que desea controlar en orden, así que para el examen si quiero controlar los primeros 5 LED en la dirección 1, debo haber configurado con el al menos 29 LED. También puede usar segmentos WLED y coincidir con los números LED para un mejor control. Trate de no configurar los LED en WLED a más de lo que necesita porque ralentizará las cosas
Después de configurar WLED, puede mover el archivo .exe a su carpeta de inicio para ejecutarse en Desktop Start (Win + R y luego "Shell: Startup"), PS Windows Defender marcó el exe que compilé como troyano, que parece ser un falso positivo. Siéntase libre de compilar su propia versión
El EXE se ejecuta con 3 argumentos de línea de comandos opcionales como este ". Wledaurasync.exe COM3 115200 Nowindow"
La tasa de baudios predeterminada es 115200, lo que me dio aproximadamente 47 FPS o actualizaciones de píxeles por segundo. Puede compilar su propio firmware (o usar la versión para WEMOS D1 Mini) cambiando la velocidad de baudios a 921600 en WLED.CPP #L263 Serial.Begin. La tasa de baudios 921600 me dio 70 fps constantes y eso es lo que estoy ejecutando, pero no agregaré esto a mi solicitud de extracción de WLED
Hay una versión de C ++ y Python disponible en las carpetas CPP y Python, respectivamente. Primero creé la versión de Python, pero quería ver si el Aura SDK era más rápido en C ++, ambos idiomas dieron exactamente los mismos FPS. (Probablemente mantendré más la versión C ++)
en un Venv
pip install -r requirements.txt
python main.py
El WLED conectado por PC se ejecuta en modo sincronizado con la pared WLED