PicoDucky

PicoDucky is an open-source, USB stick-style development board built around the Raspberry Pi RP2350. It plugs directly into any USB-A port and can operate as a hardware FIDO2 security key, an HID input device, or whatever else you can program it to do.

The board is 15×39mm, designed to sit flush in a USB-A port, with an ENIG finish so the contacts don't oxidize over time. It has two onboard RGB LEDs for status indication, a boot button, and one user-programmable button. There's also a keychain hole, because why not :p

pinout

What can it do?

Security Key: PicoDucky's primary function is as a FIDO2 hardware security key. Instead of relying on SMS codes or authenticator apps, a hardware security key provides phishing-resistant two-factor authentication, the key itself proves your identity, and it only responds to legitimate sites. Use it as a second factor alongside your password, or as a passwordless login method on supported services.

HID Device / General Programming: At its core, PicoDucky is a Raspberry Pi RP2350 dev board, so you can program it to do pretty much anything. The most common use is as an HID device, scripting keystrokes or mouse input that execute automatically when the board is plugged in, but you're not limited to that. You can write your own programs in MicroPython or C/C++ and run it on PicoDucky.

Hardware at Glance

MCU Raspberry Pi RP2350
Flash 2MB / 8MB / 16MB variants
Buttons 1 boot button, 1 user-programmable button
LEDs 2× onboard RGB
Board Footprint 15 × 39mm
PCB Finish ENIG
Extras Keychain hole

If you've just received a board, start with Getting Started, it walks you through flashing firmware and verifying the board works in a few minutes.

  • Getting Started - Flashing firmware and first boot.
  • Hardware - Specs, pinout, ordering, and revision history. (Coming Soon!)
  • Firmware - How to flash, FIDO2 setup, and HID payload scripting. (Coming Soon!)

Source

All hardware and firmware source files are available on GitHub. Hardware files live under /hardware, firmware under /firmware, and production files (Gerbers, BOM) under /hardware/{revision}/production.