Python script that matches the colour of all your RGB devices visible in OpenRGB and devices addressable by VIA (e.g. QMK keyboards) with the colour of your Windows theme/accent colour. A perfect use case scenario is when using tools like Wallpaper Engine or built-in Windows theme swapping that change your accent colour of Windows whenever the wallpaper changes (to match the wallpaper).
- OpenRGB
- Python - version <=3.13 (due to Windows not having proper wheels for C library installations)
-
Run OpenRGB, navigate to
Settingsand set the following options:Minimize on close- onStart at Login- onStart Minimized- onStart Server- onSet Server Host- on, set value to127.0.0.1Set Server Port- on, set value to6742
Then you can close the window.
Note: in case OpenRGB crashes at startup for any reason, you can also manually start the server by going to
SDK Server, settingServer Hostto127.0.0.1,Server Portto6742and clickingStart Server. -
Install requirements:
pip install -r requirements.txt -
Replace the JSON definition file with the JSON file(s) obtained from the manufacturer's website for your own QMK/VIA device.
-
Create a task in Windows Task Scheduler:
- open Task Scheduler
- click
Create Task... - in
Generaltab:- set
NametoRGB_match
- set
- in
Triggerstab:- click
New... - set
Begin the tasktoAt log on
- click
- in
Actionstab:- click
New... - set
ActiontoStart a program - set
Program/scriptto the absolute path to your locally installedpythonw.exe(pythonw.exedoes not produce an ugly command line that would otherwise pop up when running the script withpython.exe, this executable should be in the same folder as your normalpython.exeon Windows) - set
Add arguments (optional)to the absolute path toRGB_match.pyfile
- click
- in
Conditionstab:- untick
Start the task only if the computer is on AC power
- untick
- in
Settingstab:- untick
Stop the task if it runs longer than - set
If the task is already running, then the following rule appliestoStop the existing instance
- untick
- click
Ok - you can already start the task by selecting it and pressing
Run, the task will always start on its own when logging onto your machine