T-Dongle Ducky — WiFi-Controlled Rubber Ducky on LILYGO T-Dongle S3 - image 1
Build Guidebeginner

T-Dongle Ducky — WiFi-Controlled Rubber Ducky on LILYGO T-Dongle S3

Transforms the LILYGO T-Dongle S3 into a WiFi-controlled USB HID Rubber Ducky, controllable via a web server hosted on the device itself — with a DuckyScript interpreter, file storage, and both AP and STA WiFi modes.

Boards:ESP32-S3
Firmware:Arduino
Use Cases:IoT PrototypingPortable Device

Overview

T-Dongle Ducky repurposes the LILYGO T-Dongle S3's ESP32-S3 USB-OTG capability to emulate a USB HID keyboard — the classic "Rubber Ducky" attack surface used in security research and penetration testing. Unlike a standalone ducky, this device hosts its own web control panel so scripts can be written, saved, and executed wirelessly from any browser on the same network.

Features

  • Web interface accessible at the device's IP (or 192.168.0.1 in AP mode)
  • String typing — sends keystrokes immediately
  • Single command execution — runs one command at a time
  • Script editor — write and save multi-line DuckyScript files to the device
  • File management — save, run, and delete named script files from the web UI
  • DuckyScript commands: PRINT, PRINTLN, GUI, DELAY, ENTER, HOLD, and all standard modifier keys

Technical Details

The firmware is flashed as an ESP32-S3-USB-OTG project in the Arduino IDE. WiFi credentials and access point name are configured directly in the source code. The device's 0.96" display shows the current IP address on boot so you can connect immediately. Tested on Linux; Windows compatibility is expected for most keyboard codes.

Resources