Add original Pico support

This commit is contained in:
2025-09-06 12:11:49 -04:00
parent cc57b02d8c
commit 8082191d4e
4 changed files with 50 additions and 16 deletions
+15 -13
View File
@@ -2,34 +2,36 @@
This project provides control to the RGB lighting on an Alienware AW410K
keyboard based on ADC readings from an attached light dependent resistor using
a webpage served by a Raspberry Pi Pico 2. Each key on the keyboard is
a webpage served by a Raspberry Pi Pico (2). Each key on the keyboard is
individually configurable from the webpage and can be set to automatically
adjust brightness based off the ambient lighting.
![Keyboard lighting changing with light on a LDR](ambient.gif)
[YouTube Video](https://youtu.be/uY1V1W5CdWM)
## Setup
### Hardware
You will need the following hardware to make the device:
- Raspberry Pi Pico 2
- Raspberry Pi Pico or Raspbery Pi Pico 2
- USB extension cable
- light dependent resistor such as GL5528 (specific part number may vary)
- 10k ohm resistor (resistance value may vary)
You will need to cut the USB extension in half and connect the wires from the
female end to the Raspberry Pi Pico 2. The default configuration is to attach
female end to the Raspberry Pi Pico (2). The default configuration is to attach
the USB's green wire to pin 1/GP0 and USB's white wire to pin 2/GP1. You will
also need to connect the red to 5V VBUS/VSYS (since you'll be powering from the
USB host device, VBUS should be fine) and the black to any ground pin. Pin 38
is the closest and most convenient. While you can connect the Raspberry Pi Pico
to the host device using the micro USB port and a micro USB cable, since
(2) to the host device using the micro USB port and a micro USB cable, since
you have already sacrificed half of the USB extension cable, you might as well
use the male half to create a standard USB-A connection. If you wish to do so,
then simply connect the red and black wires of the male connector end to
VBUS (5V) and GND, respectively. For the data wires, you can solder them to the
two test points TP2 and TP3 on the back of the Raspberry Pi Pico 2. The white
two test points TP2 and TP3 on the back of the Raspberry Pi Pico (2). The white
cable goes to TP2 and the green cable to TP3.
![Back of Raspberry Pi Pico with USB connections to TP2 and TP3](back.jpg)
@@ -43,8 +45,8 @@ the following.
The individual wires on the USB can be fragile, so hot glue or other strain
relief is a good idea. There is also a [model for a 3D printed
enclosure](pico-usb-ldr.stl) that you can use to place the Pico inside with a
hole for the LDR to detect ambient light.
enclosure](pico-usb-ldr.stl) that you can use to place the Pico (2) inside with
a hole for the LDR to detect ambient light.
![3D printed enclosure with finished device](enclosure.jpg)
@@ -52,8 +54,8 @@ hole for the LDR to detect ambient light.
Flash the aw410k_rgb.uf2 file found from the latest
[release](https://git.kkozai.com/kenji/aw410k_rgb/releases) to the Raspberry Pi
Pico 2, and connect the keyboard to the female USB port and insert the male USB
connector of the device into your host device such as PC.
Pico (2), and connect the keyboard to the female USB port and insert the male
USB connector of the device into your host device such as PC.
To load the UI for configuring the RGB lighting, open a browser to the page
at http://aw410k.usb, or if that doesn't load, to http://192.168.40.1. From the
@@ -64,10 +66,10 @@ selected key(s), click on the "Set Color" button.
![Interface for setting the color of individual keys](ui.jpg)
To save the lighting configuration to the Pico 2 so that it loads the next time
it is powered on, click on the "Save" button under the "Flash Memory" section.
If you make unsaved changes and want to reload the configuration from memory,
you can also click the "Load" button to reset to the last saved setting.
To save the lighting configuration to the Pico (2) so that it loads the next
time it is powered on, click on the "Save" button under the "Flash Memory"
section. If you make unsaved changes and want to reload the configuration from
memory, you can also click the "Load" button to reset to the last saved setting.
If the checkbox next to "Adaptive" is selected when setting the color, the key's
brightness will automatically adjust with the ambient lighting, as determined by