Repository navigation
pokeldn v0.17.0
pokeldn 0.17.0
This desktop app trades with seven Pokemon game families on a Switch or Switch 2
through an ESP32 radio connected by USB. Nothing is installed on the console.
What is new
- Controller board: the new Control page turns an ESP32-S3 into a wired controller for the Switch.
Flash it from the Board page with Controller chosen, plug it into the console's USB-C port and
press Connect. Press buttons on screen or from the keyboard, record and edit macros, play them on
the board (it keeps playing if the computer sleeps), and share them as.pokemacrofiles. - Windows: a second session started without closing the app no longer fails with
"no reply 0x81 to command 0x01" on a classic ESP32. The app now finds a board still running at
the previous session's speed. Thanks to easyworld for the report and the fix.
The radio firmware is unchanged at 1.6.1; wireless boards need no reflash. The controller firmware
is 1.1.0.
pokeldn is an unofficial fan project, not affiliated with Nintendo or The Pokemon Company. It is not
meant for commercial or promotional use; see the License section of the README.
Downloads
| Computer | File |
|---|---|
| macOS, Apple silicon | pokeldn-macos-arm64.zip |
| Windows, x64 | pokeldn-windows-x64.zip |
| Linux, x64 | pokeldn-linux-x64.tar.gz |
Each app includes PKHeX.Core and firmware for classic ESP32, ESP32-S3, ESP32-C3 and ESP32-C6. Python, .NET
and ESP-IDF are bundled or unnecessary for running the app. Supply your own prod.keys.
The separate pokeldn-radio*.bin (wireless) and pokeldn-pad*.bin (controller) files are merged
firmware images for manual flashing at address 0x0; the app selects the right image for the
connected chip. pokeldn-pad.bin, the classic ESP32 controller over Bluetooth, is untested on a
console. SHA256SUMS covers all nine downloads.
First run
- Extract the archive for your computer. On Windows, run
pokeldn.exeinside the extractedpokeldnfolder.- macOS: the app is unsigned, so the first launch is blocked. Open it once and close the warning,
then open System Settings, Privacy & Security, scroll down to Security and press Open Anyway next
to pokeldn, then confirm with your password. Later launches open normally. - Windows: if SmartScreen stops the app, choose More info, then Run anyway.
- macOS: the app is unsigned, so the first launch is blocked. Open it once and close the warning,
- Choose
prod.keyswhen prompted. - Connect one supported board with a USB data cable. S3, C3 and C6 boards use native USB Serial/JTAG.
On Windows, a classic ESP32 needs its USB chip's driver first (CP210x or CH340); the Board page
links both, says how to install them and names the one missing.
A board that ships an external antenna, such as the Seeed Studio XIAO ESP32C3 or XIAO ESP32S3,
needs it attached; larger S3 boards such as the N8R2 and N16R8 have an onboard antenna. - On Board, press Flash. The app checks the board on its own and shows Board ready.
- On Games, choose a game and a tool, build an offer or select a Pokemon file, and follow the
console instructions before starting.
Received Pokemon are saved in Documents/pokeldn/Received, with a configurable folder in Settings.
Supported features
- Trades in both directions: FireRed/LeafGreen, Let's Go Pikachu/Eevee, Sword/Shield, Brilliant
Diamond/Shining Pearl, Legends Arceus, Scarlet/Violet and Legends Z-A. - Mystery Gift: FireRed/LeafGreen and Sword/Shield.
- Tera Raids in both roles: Scarlet/Violet.
- Legal Pokemon preparation with PKHeX.Core, board detection and flashing, and session recordings.
- An ESP32-S3 as a wired Switch controller, with macros.
Platform notes
macOS requires Apple silicon and macOS 12 or later. Linux requires GTK 3, libsecret and access
to the serial port; on distributions using the dialout group, run sudo usermod -aG dialout "$USER"
and log out and back in. ESP32-S2 is unsupported.
Setup and protocol documentation contains the per-game
requirements. Attach the latest session recording from Settings to an
issue when reporting a problem.