From 214c74f6c3494f9e05ba49c01f1f2a220fb63baa Mon Sep 17 00:00:00 2001 From: P7MJ Date: Sat, 20 Jun 2026 09:18:21 -0400 Subject: [PATCH] Update README.md --- README.md | 72 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ README.txt | 1 - 2 files changed, 72 insertions(+), 1 deletion(-) create mode 100644 README.md delete mode 100644 README.txt diff --git a/README.md b/README.md new file mode 100644 index 0000000..9e5cf96 --- /dev/null +++ b/README.md @@ -0,0 +1,72 @@ +# Pico Rubber Ducky + +## 🦆 Introduction + +This is a USB Rubber Ducky project made with the Raspberry Pi Pico! It types commands and chords (keypresses that activate stuff, like `Ctrl+Alt+T`) at superhuman speeds, allowing you to execute keypresses *really* fast. + +This project uses the C programming language, the Pico SDK, gcc, cmake, and make. **Development has been tested on Debian Trixie only and its successful development or usage on Windows is not guaranteed**. + +It was tested on the RP2040 version of the Pico W. Due to not using any Pico-W exclusive features, it will very likely work on the original Pico. + +## 🛠️ Usage + +On Debian, run: + +``` +sudo apt update +sudo apt install cmake gcc-arm-none-eabi libnewlib-arm-none-eabi build-essential libstdc++-arm-none-eabi-newlib +``` + +Clone the repository: + +``` +git clone +cd pico_rubber_ducky +``` + +Get the Pico SDK. + +- If you have it, set an environment variable pointing to it: + ``` + export PICO_SDK_PATH=/path/to/their/pico-sdk + ``` +- If not, clone it to the project folder: + ``` + git clone -b master https://github.com/raspberrypi/pico-sdk.git + cd pico-sdk + git submodule update --init + cd .. + export PICO_SDK_PATH=$(pwd)/pico-sdk + ``` + +Build the dependencies and environment: + +``` +cmake . +``` + +Build the `.uf2` file: + +``` +make +``` + +Now you can plug a Raspberry Pi Pico/Pico W on BOOTSEL mode and drag the finished `.uf2` file into it. + +> [!TIP] +> If you don't want my test chord and string running, **IMMEDIATELY** unplug the raspberry pi once it has finished transferring. + +## 🎁 Customization + +Open `main.c` and go to line 168, where you can see several test functions. These are the chords and strings to be executed. + +To execute a chord: `type_chord("ctrl+alt+t");` + +To execute a string: `type_string("hello!");` + +## 🏅 Credits + +P7MJ original. + +> [!WARNING] +> I do not endorse using this for malicious purposes! This is a test project ONLY. \ No newline at end of file diff --git a/README.txt b/README.txt deleted file mode 100644 index 32d418b..0000000 --- a/README.txt +++ /dev/null @@ -1 +0,0 @@ -General development for all Raspberry Pi Picos running the RP2040