Remote control your computer's keyboard and mouse over WiFi - a dual-microcontroller USB HID automation tool.
Control a computer's keyboard and mouse remotely. This project supports two hardware configurations:
- Dual-Microcontroller: Using Pro Micro (ATmega32U4) as a USB HID device and NodeMCU (ESP8266) for WiFi connectivity.
- All-in-One (ESP32-S3): Using a single ESP32-S3 board (like the Lilygo T-Dongle-S3) which handles both WiFi and Native USB HID, and includes a built-in display and microSD card support.
Perfect for automation, testing, accessibility, or education.
A comprehensive list of features is available in the FEATURES.md file.
- Type Text
- Mouse Control with Live Trackpad
- Keyboard Capture
- Quick Actions
- Quick Scripts
- Activity Log
- Custom Operating Systems
- WiFi Management
- File Management
- Web Authentication
- HTTPS Support
- Script Storage
- Advanced Mouse Jiggler
- REST API
- Optional OLED Display
See FEATURES.md for a detailed description of each feature.
Required:
- Pro Micro (ATmega32U4) - 5V/16MHz
- NodeMCU (ESP8266)
- 4× jumper wires (male-to-male)
- 1× Micro-USB cable
Optional:
- 128x64 I2C OLED display - Connect to D3 (SDA) and D4 (SCL) on NodeMCU
NodeMCU and Pro Micro with optional OLED display
NodeMCU and Pro Micro with optional OLED display assembled in a small 3d printed box
Recommended:
- Lilygo T-Dongle-S3: A compact USB-dongle form factor with built-in 0.96" LCD and microSD card slot.
- Other ESP32-S3 boards with native USB support.
Lilygo T-Dongle-S3 All-in-One Solution
See the ESP32-S3 Sub-project README for specific setup instructions for this hardware.
- Arduino IDE 1.8+
- ESP8266 board support (install via Board Manager)
- Built-in libraries: Keyboard, Mouse, EEPROM
- Optional for OLED: Adafruit GFX, Adafruit SSD1306
- Wire - Connect 4 wires: VCC→Vin, GND→GND, TX→RX, RX→TX (crossed)
- Upload - Flash
pro-micro/pro-micro.ino(Leonardo board) andnodemcu/nodemcu.ino(NodeMCU 1.0) - Upload web files - Use LittleFS upload tool for
nodemcu/data/folder - Connect - Plug Pro Micro into computer via USB (powers both devices)
See SETUP.md for detailed instructions and WIRING.md for connection diagrams.
Follow the instructions in the esp32-s3/README.md.
- Access - Connect to WiFi "USB-HID-Setup" (password: HID_M4ster), open http://192.168.4.1 or https://192.168.4.1
- Login - Enter web credentials (username: admin, password: WiFi_HID!826)
- HTTPS Note - For HTTPS, accept the browser security warning for the self-signed certificate
- AP Mode (default): Device creates WiFi network "USB-HID-Setup"
- Station Mode: Configure WiFi via web interface to connect to your network
- API: See API.md for REST endpoints and DuckyScript reference
All features work in both AP and Station modes.
For authorized use only on your own devices. Not for unauthorized access or malicious purposes.
Provided as-is for educational and personal use.