

Rubberducky
Rubber ducky (BadUSB) device based on ATmega32u4 chip with built-in usb c plug.
- Size
- 36.7 × 18.7 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 14
- Nets
- 39
- Pads
- 74
- Tracks, vias
- 119, 12
- Pours
- 2
- Routed
- Yes
- KiCad
- KiCad 9.0 (file 20241229)
- Created
- 13 Mar 2025
- Updated
- 28 May 2025
Overview
Rubberducky is an open-source printed circuit board by Olsonikk, from the Olsonikk/rubberducky repository on GitHub. It is a 2-layer board of 36.7 × 18.7 mm with 14 parts on 39 nets, routed with 119 tracks and 12 vias.
It is built around the ATMEGA32U4-AU. Its parts include 5 capacitors, 4 resistors, 3 ICs, 1 diode and 1 crystal. It belongs with the AVR (ATmega, ATtiny) boards of this library.
Main components
1README
README.mdrubberducky
Rubber ducky (BadUSB) device based on ATmega32u4 chip with built-in usb c plug.

Parts
14| Qty | Value | Footprint | References |
|---|---|---|---|
| 2 | 20p | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C2, C4 |
| 2 | 22 | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R1, R2 |
| 1 | 100n | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C5 |
| 1 | 10k | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R3 |
| 1 | 10u | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C3 |
| 1 | 1u | Capacitor_SMD:C_0805_2012Metric_Pad1.18x1.45mm_HandSolder | C1 |
| 1 | 220 | Resistor_SMD:R_0805_2012Metric_Pad1.20x1.40mm_HandSolder | R4 |
| 1 | ASCO | Crystal:Crystal_SMD_3225-4Pin_3.2x2.5mm_HandSoldering | Y1 |
| 1 | ATmega32U4-A | Package_QFP:TQFP-44_10x10mm_P0.8mm | U1 |
| 1 | LED | LED_SMD:LED_0805_2012Metric_Pad1.15x1.40mm_HandSolder | D1 |
| 1 | USB-C-2.0 | usb-c-2.0:usb-c-2.0-MODULE | U2 |
| 1 | ~ | usb-c-2.0:switch | U3 |
Similar boards
- 2 layers243.2 × 106 mm

- 2 layers228.4 × 85 mm

LeChiffre
tominabox1/Le-Chiffre-Keyboard
Great thanks goes to Jake at P3D for really making the case amazing and open sourcing his work. Check him out at P3Dstore.com
105 parts183GPL-3.0 - 2 layers228.6 × 76.8 mm

Schwann Rev0.5b
The-Royal/The_Royal_Open-Source-Projects
A Master Repository For All things Royal Made
127 parts159MIT - 2 layers30 × 65 mm

Keyboard mcu
dpapavas/lagrange-keyboard
A configurable, handwired, ergonomic keyboard
26 parts137AGPL-3.0 - 2 layers88.4 × 80 mm

LHS Controller PCB
dmcke5/ZenDeck
This is the second revision of my Mini PC based handheld Gaming PC! It is designed for a Beelink SER 5 Mini PC but could be adapted to other systems by changing the mounting brackets and outlet plate.
76 parts133CERN-OHL-S-2.0 - 2 layers259.5 × 89.1 mm

- 2 layers99.1 × 99.1 mm

Power supply panelized
thebiguno/microcontroller-projects
A home for a bunch of microcontroller projects which don't warrant their own repos.
223 parts75 - 2 layers323.9 × 95.1 mm

UnSplit
swiftrax/UnSplit
Ergo 40% mechanical keyboard with all components on the top with diodes arranged in an array
110 parts68GPL-2.0
Questions
How big is the Rubberducky PCB?
It measures 36.7 × 18.7 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Rubberducky use?
14 parts, built around the ATMEGA32U4-AU. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Rubberducky KiCad files?
From the Olsonikk/rubberducky repository on GitHub, at the commit this page was made from: the board is rubber_ducky.kicad_pcb and its schematic rubber_ducky.kicad_sch. PCBKit opens the board in the browser, with nothing to install.
Can I use the Rubberducky design in my own project?
Its repository states no licence, so its author keeps all rights: ask Olsonikk before reusing the design.