ESP32 Joystick

Here is a programmable joystick based on the ESP32-C3 SuperMini.
At first I thought about using a Digispark, but it lacks enough pins, so I ended up using the ESP32 instead. As a bonus, I get several ways to send data: Wi-Fi, BLE, and ESP-NOW (ESP-to-ESP communication).

Components

The scheme is pretty simple. It contains 4 buttons connected using input pull-ups, a Nintendo Switch joystick with two 12-bit analog pins (output range 0–4096), plus the joystick button.
It is powered by a battery and a 5V converter and mini type-c charger.

Joystick connection