Skip to the content
2 layers19 × 44 mmPentesting rd schematics, the printed circuit board in 3D

Pentesting rd schematics

51n0nGG0/pentesting_rd1

Custom STM32-based USB HID device inspired by a Rubber Ducky

Size
19 × 44 mm
Copper layers
2
Thickness
1.6 mm
Parts
22
Nets
48
Pads
114
Tracks, vias
166, 35
Pours
1
Routed
Yes
KiCad
KiCad 9.0 (file 20241229)
Created
27 Nov 2025
Updated
21 Apr 2026

Overview

Pentesting rd schematics is an open-source printed circuit board by 51n0nGG0, from the 51n0nGG0/pentesting_rd repository on GitHub, published under the MIT licence. It is a 2-layer board of 19 × 44 mm with 22 parts on 48 nets, routed with 166 tracks and 35 vias.

It is built around the STM32F042C6T6, TF-01A and USBLC6-2SC6, with the XC6206P332MR-G among its other parts. Its parts include 10 capacitors, 5 resistors, 3 ICs, 1 connector and 1 fuse. It belongs with the STM32 boards of this library.

Main components

4

README

README.md
Pentesting Rubber Ducky Logo

Pentesting Rubber Ducky

DIY USB Rubber Ducky based on STM32

51n0nGG0 - Pentesting Rubber Ducky Stars - Pentesting Rubber Ducky Forks - Pentesting Rubber Ducky

LINKEDIN

[!WARNING]
Educational Use Only

This project is intended solely for educational, research, and personal learning purposes.

It must not be used for malicious activities, unauthorized system access, or any action that could compromise the privacy or security of others.

The author assumes no responsibility for improper or illegal use of this device or its associated software.

Perform any testing only on devices you own or where you have explicit permission, and always comply with applicable cybersecurity laws and regulations.

🚀 About the Project

This project is a custom STM32-based USB HID device, inspired by the Rubber Ducky. It includes firmware, hardware design files, and a simple scripting system for keyboard automation. Its main purpose is to help explore and learn about USB HID implementation, embedded systems development, and authorized security testing.

🧪 Proof of Concept

The Proof of Concept for this project is available inside the repository:

Below you can watch a short video demonstrating the PoC in action.

PoC Video Thumbnail

📚 Full Documentation

The complete documentation is available inside the /docs folder:

🧰 Features, Software and Hardware

Features

  • Keystroke Injection: Execute commands stored in a script.txt file.
  • Supports Rubber Ducky-style Scripts: Commands like "DELAY", "REM", "STRING" and special keypresses.
  • Compatible with Spanish Keyboards: Fully supports keystroke injection on systems using the Spanish (ES) layout.

Software

Hardware

  • Pentesting RD Board: Custom board included in the project schematics and hardware files.
  • MicroSD Card: Must be formatted as FAT16 or FAT32 to store the script.txt file.

🔮 Future Changes

Future updates may include:

  • Power LED Indicator: Add a small LED to show when the device is powered and running.
  • MicroSD Script Status LED: An LED that indicates when the card is present, when no script is found, and flashes on each keystroke during script execution.
  • Additional Commands: Extend the scripting language with new commands for improved automation and more advanced keystroke control.

©️ License

Distributed under the MIT License. See LICENSE.txt for more information.

📬 Contact

Email: eloyschmidtrodriguez@gmail.com

LinkedIn: https://www.linkedin.com/in/eloyalfredoschmidtr/

Project Link: https://github.com/51n0nGG0/pentesting_rd

Parts

22
QtyValueFootprintReferences
7100nFCapacitor_SMD:C_0402_1005MetricC1, C2, C3, C4, C5, C7, C10
510kResistor_SMD:R_0402_1005MetricR1, R2, R3, R4, R5
21uFCapacitor_SMD:C_0402_1005MetricC8, C9
110uFCapacitor_SMD:C_0603_1608MetricC6
1500mAFuse:Fuse_0603_1608MetricF1
1MOLEX_48037-1000MOLEX_48037-1000:MOLEX_48037-1000J1
1STM32F042C6T6Package_QFP:LQFP-48_7x7mm_P0.5mmU1
1SW_PushButton_Switch_SMD:SW_SPST_B3U-1000PBOOT1
1TF-01ATF-01A:TF-01AMICRO_SD1
1USBLC6-2SC6Package_TO_SOT_SMD:SOT-23-6U2
1XC6206P332MR-GPackage_TO_SOT_SMD:SOT-23-3U3

Similar boards

  • 2 layers54 × 128.6 mmPrototype, the printed circuit board in 3D

    Prototype

    ozseccon/ozseccon2019_badge

    development repo for 2019 badge

    32 parts2
  • 2 layers122.5 × 115.6 mmInitialDesign, the printed circuit board in 3D

    InitialDesign

    ozseccon/ozseccon-dev-badge

    OzSecCon Badge Dev environment

    49 parts1
  • 4 layers20.3 × 61 mmStm32devboard, the printed circuit board in 3D

    Stm32devboard

    psas/mints-scada-hardware

    Minimal Test Stand Supervisory

    44 parts
  • 4 layers66 × 71 mmKoganeee, the printed circuit board in 3D

    Koganeee

    Sujay-Golla/koganeee

    Making my Kogane for my work room!

    96 parts1MIT
  • 4 layers66.4 × 66.4 mmRera, the printed circuit board in 3D

    Rera

    fdiwth/tvc-drone

    This repository contains the documentation, hardware designs, and source code for a Thrust Vector Control (TVC) drone.

    140 parts34GPL-3.0
  • 6 layers100 × 120 mmAstra piNas, the printed circuit board in 3D

    Astra piNas

    jlcjak/astra_piNas

    Six-layer CM5 Lite dual-NVMe carrier with PCIe switch, Ethernet, microSD, USB-C PD and PoE. Review design; fabrication hold documented.

    176 parts30
  • 4 layers64.1 × 72.8 mmBeeFASYER SPARROW, the printed circuit board in 3D

    BeeFASYER SPARROW

    beewarden/BeeFASYER_SPARROW

    Each BEEFASYER monitoring network is centered on exactly one Sparrow.

    142 parts1CERN-OHL-S-2.0
  • 2 layers46.1 × 18.7 mmCrackedbadusb, the printed circuit board in 3D

    Crackedbadusb

    axellse/scriptstick

    better badusb

    38 parts

Questions

How big is the Pentesting rd schematics PCB?

It measures 19 × 44 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Pentesting rd schematics use?

22 parts, built around the STM32F042C6T6, TF-01A, USBLC6-2SC6 and XC6206P332MR-G. 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 Pentesting rd schematics KiCad files?

From the 51n0nGG0/pentesting_rd repository on GitHub, at the commit this page was made from: the board is pentesting_rd_schematics/pentesting_rd_schematics.kicad_pcb and its schematic pentesting_rd_schematics/pentesting_rd_schematics.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Pentesting rd schematics design in my own project?

Its repository publishes it under the MIT licence: you may reuse it on that licence's terms (keep the author's notice, and for a copyleft licence share your changes alike).