Python3 program to control Elgato Ring Light on your local network without Elgato's Control Center software

Overview

Elgato Light Controller

I'm really happy with my Elgato Key Light from an illumination perspective. However, their control software has been glitchy for me. When I first used the light the software worked most of the time, but over time it started having problems by only detecting the light intermittently.

After internet searching I found:

  1. Others have had the exact same experience.
  2. Corsair’s technical support wasn’t particularly helpful or responsive.
  3. Factory resetting the light didn’t help, in my case it made it worse.
  4. Some internet threads think the issue is that the Key Light only uses 2.4 GHz Wi-Fi networks, and that newer Wi-Fi systems are trying to connect at 5.0 GHz. That wouldn’t explain why the light works sometimes, but I built a dedicated 2.4 GHz network to test this and it didn’t help.
  5. Other internet threads think the issue is multicast being blocked on one’s home network. It is true that this could explain the symptoms, but my network doesn’t block multicast and doesn’t explain the intermittent nature of the problem.

Diving in a bit deeper I discovered that my light:

  1. Was staying connected to my network, even when the software couldn’t find it.
  2. On port 9123 there was an API listener.
  3. Pyleglight is a python3 module that implements an API wrapper for Key lights. I’ve included the latest version of Pyleglight in this repository as of October 26, 2021.

So, I went ahead and created this program to accept all the typical commands for control of a single light. If you have multiple lights you can either call the program repeatedly or have a fun afternoon modifying it to work with multiple lights.

Usage is as follows:

usage: elgato-light-controller [ options ]

CLI control of an Elgato light

optional arguments:

-h, --help show this help message and exit

-on, --On Turn light on

-off, --Off Turn light off

-brighter, --Brighter Turn light on and make it brighter

-dimmer, --Dimmer Turn light on and make it dimmer

-warmer, --Warmer Turn light on and make it warmer

-cooler, --Cooler Turn light on and make it cooler

-address ADDRESS, --Address ADDRESS Specify the light's IP address

-port PORT, --Port PORT Specify the light's API port

-default, --Default Set light to my default color and temperature

With no arguments the program will just toggle the state of the light.

Installation & Setup Tips:

  1. Give your light a static IP address through your network’s DHCP server.
  2. Adjust the IP address in the source code so it matches the address you’ve given it. (Alternatively always pass it in using the -address command line argument).
  3. If you have a Stream Deck you can link buttons to commands (at least on Mac OS). Use the Steam Deck's Open command and point to elgato-light-controller.py. Then manually edit the path by clicking in the "App/File" field to the file it opens and appending "-brighter" or any other parameters you want. Some internet posts state that one has to create an AppleScript or shell script to pass in parameters, but this method works fine for me and avoids that overhead. I made buttons for toggle on/off, brighter, warmer, cooler, and dimmer.
  4. If you're using this software you may choose to uninstall the Elgato Control Center, since it doesn't work well (at least as of this writing)
Owner
Jeff Tarr
Jeff Tarr
AuthGG is a Python library for dealing with Auth.gg apis

AuthGG AuthGG is a Python library for dealing with Auth.gg apis Installation Use the package manager pip to install requests Add the auth.py file in y

ExtremeDev 1 Dec 20, 2021
The best discord.py template with a changeable prefix

Discord.py Bot Template By noma4321#0035 With A Custom Prefix To Every Guild Function Features Has a custom prefix that is changeable for every guild

Noma4321 5 Nov 24, 2022
Webb-Tracker-Bot - This is a discord bot that displays current progress of the James Webb Space Telescope.

Webb-Tracker-Bot - This is a discord bot that displays current progress of the James Webb Space Telescope.

Copperbotte 1 Jan 05, 2022
Asynchronous python aria2 mirror bot Telegram.

aioaria2-mirror-bot A Bot for Telegram made with Python using Pyrogram library. It needs Python 3.9 or newer to run. THIS BOT IS INTENDED TO BE USED O

Adek 85 Jan 03, 2023
Ethone-Selfbot - Open Source Discord Self-Bot, written in discord.py

Ethone SB Table of contents Newest open-source Discord SelfBot with useful commands and easy documentation on how to add your own and change the exist

Ethone 3 Jan 08, 2022
Unofficial Coinbase Python Library

Unofficial Coinbase Python Library Python Library for the Coinbase API for use with three legged oAuth2 and classic API key usage Version 0.3.0 Requir

George Sibble 104 Dec 01, 2022
Manage gmail account using python, forget about imap and just code what you supposed to do.

GGmail Manage gmail account using python, forget about imap and just code what you supposed to do. Help See documentation for more details. Install In

Dylan Do Amaral 6 Sep 23, 2022
A QQ(Tencent) robot created by go-cqhttp & nonebot2

绘梨花(胶布)Bot|ErikaBot ✨ 基于NoneBot2的绘梨花多功能 Bot ,自用 ✨ 快速开始 参考go-cqhttp项目文档,配置好机器人的相关设置,以及反向ws客户端 参考nonebot2项目文档,添加必要的.env相关设置 安装本项目相关的依赖库(依赖清单) git clone本

10 Aug 09, 2022
Lending-Club-Loans - Using TensorFlow to create an ANN model to predict whether people would charge off or pay back their loans.

Lending Club Loans: Brief Introduction LendingClub is a US peer-to-peer lending company, headquartered in San Francisco, California.[3] It was the fir

Ali Akram 1 Jan 03, 2022
WhatSender is a python package that allows you to send Whatsapp messages at a given time.

WhatSender is a python package that allows you to send Whatsapp messages at a given time.

IdoBarel 0 Apr 21, 2022
Discord Token Generator based on HTTPX, makes unverified tokens and automatically joins your server! this is used for memberboosting

Discord Token Generator | 2021 Features: (1) hCaptcha Bypasser, latest hfuck.py Updated by me (2) Free Proxy Support/Scrapper (3) Custom Realistic Dat

2 Nov 30, 2021
Projeto de estudantes do primeiro período do CIn - UFPE voltado para a criação de um sistema interativo no fechamento da disciplina IF669 - Introdução a Programação.

Projeto Game: Dona da Lua Alunos: Beatriz Férre Clara Kenderessy Matheus Silva Rafael Baltar Roseane Oliveira Samuel Marsaro Sinopse O Cebolinha apron

Maria Clara Kenderessy 5 Dec 20, 2021
KalmanFilterExercise - A Kalman Filter is a algorithmic filter that is used to estimate the state of an unknown variable

Kalman Filter Exercise What are Kalman Filters? A Kalman Filter is a algorithmic

4 Feb 26, 2022
Decode the Ontario proof of vaccination QR code

Decode the contents of the Ontario Proof of Vaccination (the "Smart Health Card QR Code") Output This is from my QR code, hopefully fully redacted alt

Wesley Ellis 4 Oct 22, 2021
Scheduled Block Checker for Cardano Stakepool Operators

ScheduledBlocks Scheduled Block Checker for Cardano Stakepool Operators Lightweight and Portable Scheduled Blocks Checker for Current Epoch. No cardan

SNAKE (Cardano Stakepool) 4 Oct 18, 2022
A GitHub Actions repo for tracking the dummies sending free money to Alex Jones + co.

A GitHub Actions repo for tracking the dummies sending free money to Alex Jones + co.

Egarok 2 Jul 20, 2022
A Simple Telegram Bot That Can Generate Strong Password With Many Features Written In Python Using Pyrogram

Password-Generator-Bot A Simple Telegram Bot That Can Generate Strong Password With Many Features Written In Python Using Pyrogram Features Random Pas

Muhammed Fazin 17 Dec 23, 2022
A telegram bot does not allow channels to send messages to the telegram supergroup

Channel Message Handler Getting started Installation $ git clone https://github.com/AbhijithNT/GroupChannelHandler.git Change directory $ cd ChannelMe

Abhijith N T 0 Dec 26, 2021
A Telegram bot to transcribe audio, video and image into text.

Transcriber Bot A Telegram bot to transcribe audio, video and image into text. Deploy to Heroku Local Deploying Install the FFmpeg. Make sure you have

10 Dec 19, 2022
A discord bot for checking what linked profiles a user has to their Ubisoft account

ubisoft_discord_profiles A Discord bot for checking what linked profiles a user has to their Ubisoft account. This can be setup using an enviromental

Andrei 1 Dec 17, 2021