Analog joystick (KY-023) with ESP32
Supply 3.3 V
Bus ANALOG
Pins and ESP32 wiring
| Pin | Role | ESP32 pin | Notes |
|---|---|---|---|
| GND | Ground | GND | |
| +5V | Power | 3V3 | Connect to 3V3 anyway, so the outputs stay within the ADC range |
| VRX | Analog output | D34 | To an ADC pin (prefer ADC1: GPIO 32 to 39) |
| VRY | Analog output | D35 | To an ADC pin (prefer ADC1: GPIO 32 to 39) |
| SW | Output (the part drives it) | D25 | Button: LOW when pressed. Use INPUT_PULLUP |
Suggested wiring for the 30-pin ESP32 DevKit, avoiding flash, input-only and strapping pins. BoardPilot checks it for you as you wire.
Starter code (Arduino)
void setup() { Serial.begin(115200); }
void loop() {
int mv = analogReadMilliVolts(34); // VRX on GPIO 34
Serial.println(mv);
delay(200);
}
Sources
- Joy-IT KY-023 datasheet, Pins GND, +5V, VRx, VRy, SW; two 10 kΩ potentiometers
Try it in 3D in BoardPilot
Related parts
Part data: CC BY 4.0, free to reuse with credit to BoardPilot.