I like my desk being lit like Christmas.
What it does
It takes the image on the display and produces a live representation of it on the keyboard
How I built it
It's mostly built using pure Python code for the most part along with the Requests and Pillow libraries.
It takes regular snapshots of the display, resizes it to the pixel count of the keyboard (22 x 6) and then pushes it the keyboard using the REST API of the Razer SDK.
Challenges I ran into
Got some weird effects when I mixed up height and width :/
By default, the pillow library was not capturing the full display as it was not dpi aware. This was done by setting DPI-aware behaviour was using a call to the Win32 API.
Accomplishments that I'm proud of
What I learned
- How to work with the Pillow library and Razer SDK.
- How to use the
withkeyword properly in Python
What's next for Razer Desktop Visualiser
Possibly port it to C++ to improve performance