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

Fancy lights

What I learned

  • How to work with the Pillow library and Razer SDK.
  • How to use the with keyword properly in Python

What's next for Razer Desktop Visualiser

Possibly port it to C++ to improve performance

Built With

Share this project: