The App
Installation guide
The Jumperless App is now on PyPi!
The easiest way to get started is an isolated tool install:
uv tool install jumperless
# or: pipx install jumperless
Plain pip install jumperless works too, it just only updates the copy in that Python.
Then run it with:
jumperless
To upgrade, use the command that matches the install you have:
uv tool upgrade jumperless
pipx upgrade jumperless
pip install --upgrade jumperless
If the version still looks old, which jumperless will tell you which install you're actually running.
The app repo is at https://github.com/Architeuthis-Flux/Jumperless-App
Alternative: Download Pre-built Binaries
Find the latest release
https://github.com/Architeuthis-Flux/JumperlessV5/releases/latest
The link above will magically lead you to the latest version, and will look something like https://github.com/Architeuthis-Flux/JumperlessV5/releases/tag/5.7.11.0
At the bottom under Assets, download the Jumperless App for your OS
Windows
Jumperless-Windows-x64.exe
macOS
Jumperless-macOS.dmg(universal, signed and notarized)
Linux
Jumperless-Linux-x86_64.AppImage(if you're not sure which flavor of Linux, use this one)Jumperless-Linux-x64.tar.gzas a fallback if the AppImage won't run
Launcher
Jumperless-Launcher-Windows.zip,Jumperless-Launcher-macOS.zip,Jumperless-Launcher-Linux.zip(see Launch Scripts below)
Python
- download
JumperlessWokwiBridge.pyandrequirements.txt - open your favorite terminal, navigate to the folder where you downloaded the two files above.
pip install -r requirements.txt# run this command to install the needed Python librariespython3 JumperlessWokwiBridge.py# open the app, will update firmware if there's a newer version
Now that I've lifted my self-imposed ban on VT100 commands (for compatibility and me-spending-too-much-time-on-them reasons, but, YOLO), we've got colors now!
But that's like the least cool thing the new app can do, here's a list of what's new:
What It Does
- Firmware updating should be pretty reliable when there's a new version (falls back to instructions for how to do it manually)
- Command history and tab completion, up arrows will go through past commands and are persistent after closing
- Properly detects which port is the main Jumperless Serial and which is routable UART
- Arduino flashing from Wokwi works once again and is a lot more solid
- It installs arduino-cli on first startup and uses it pull in libraries, compile, and flash an arduino Nano in the header
- When a flash starts, the Jumperless itself connects the UART to the Nano's D0/D1 if they aren't already connected. That happens for any flasher (the app, Arduino IDE, arduino-cli) because the board just watches for the DTR reset pulse, and it's the
[serial_1] autoconnect_flashingconfig setting, on by default. The connections are left in place afterwards, useaif you want them gone - avrdude output is shown in real time (you'd be amazed how difficult this was)
- Direct Wokwi circuit import - Copy diagram.json from Wokwi and import it with the
Wcommand (see below) - No longer a janky pile of garbage
Local Arduino Sketch Support
You can set a slot to point to a local Arduino sketch.ino file and it will flash if it detects a change
- If you don't like using Arduino IDE or Wokwi and prefer using
vimoremacsor whatever, now you can let the app handle the flashing stuff and just edit an .ino file. - In the app, type
menuthenslotsand instead of entering a link to a Wokwi project, just give it a path to a file (this will be saved so you can unassign it and pick it later by name) - (This one is so fucking sick)
Launch Scripts
- The launcher bundles (
Jumperless-Launcher-Windows/macOS/Linux.zip) are a tiny clickable app that installs or updates thejumperlessPyPI package with uv and then runs it in the system default terminal (Terminal.app on macOS, Windows Terminal or cmd on Windows, gnome-terminal/konsole/xfce4-terminal/xterm on Linux) - It doesn't kill or close other instances that happen to be open
- To run it in your favorite terminal emulator instead (tabby, iTerm2, whatever), just open that terminal and type
jumperless(orpython3 JumperlessWokwiBridge.pyif you downloaded the script) - Linux people are no longer red-headed stepchildren, there's a single-file AppImage now for you nerds, with a tar.gz as a fallback
Importing Circuits from Wokwi
You can design circuits in the Wokwi online simulator and import them directly to your Jumperless with the W command, or use the Jumperless App and it'll pull it from your project automatically and live update. This has been around since the OG Jumperless, there's a demo in this Crowd Supply update.
Direct Link Import
You can now just dump a Wokwi link into the app at any time and it'll work:
Menu
~~~~~
x = clear all connections
+ = add connections
- = remove connections
https://wokwi.com/projects/424432011346848769
Enter a name for this new project: cool project zone
✓ Saved 'cool project zone' to project library
✓ 'cool project zone' assigned to active slot 0
URL: https://wokwi.com/projects/424432011346848769
The project will start updating automatically
How to manually Import from Wokwi
- Design your circuit on wokwi.com
- Click on the
diagram.jsontab in the Wokwi editor - Copy all the JSON content (Ctrl+A, Ctrl+C or Cmd+A, Cmd+C)
- In Jumperless, type
Wand press Enter - Paste the JSON (Ctrl+V or right-click → Paste)
- The parser automatically detects when the JSON is complete and imports it!
Supported Wokwi Components
- Half breadboard - Wokwi's breadboard maps directly to Jumperless rows. Top rows 1-30 are rows 1-30, bottom rows 1-30 are rows 31-60. The column letter is ignored, all five holes in a row are one node anyway. The top
+rail maps toTOP_RAIL, the bottom+rail toBOTTOM_RAIL, and both-rails toGND - Arduino Nano - D0-D13 and A0-A7 map to the Nano header nodes. GND maps to the
GNDnet, 5V (or VCC) toTOP_RAIL, and 3V3 toBOTTOM_RAIL, so wires to those pins do make real connections. RESET, AREF, VIN and RX/TX are ignored - Logic Analyzer - Channels map to GPIO: D0-7 → GPIO 1-8
- Wire colors - Wokwi wire colors preserved
- Rail voltages - Detected from text labels in Wokwi
- VCC and GND Nodes - VCC maps to
TOP_RAIL, GND maps toGND
Note: The app still works with the OG Jumperless and those original mappings remain the same.
Wire Color Mapping
Wire colors will match the ones you set in Wokwi! The new Wokwi parser sends the entire diagram.json from Wokwi and parses it on the Jumperless, which means color information gets preserved.
All Wokwi wire colors are preserved and displayed on the breadboard LEDs:
red, orange, yellow, green, blue, violet, purple, magenta, pink, cyan, white, gray, grey, black, brown, limegreen, gold
A couple of them land on the same LED color: gold looks the same as orange, and pink the same as magenta. A color name that isn't in the list shows up as a dim white.
Note: Black wires let the Jumperless auto-assign a color.
If you leave all the wires green (the default in Wokwi) or make a wire black, it'll just auto assign colors.
About color assignment: There is some weirdness because colors in Wokwi are applied to bridges (a pair of nodes) while color in the Jumperless gets assigned to nets (a collection of connected nodes). So if you have a bunch of things electrically connected together with different wire colors, it'll use the first colored wire it finds in that net and drop the rest.
Rail Voltage Detection
Add a text label in your Wokwi diagram to specify rail voltages:
top rail 5.5V
bottom rail 3.5V
The Jumperless parser will automatically detect these values and set the rails accordingly
It's not picky about the format, TOP RAIL = 5V, top_rail: 4.5V, toprail 3v3, bot rail 2.5V and BOTTOM_RAIL = -5V all work, and negative voltages are fine. A label like VCC = 5V sets the top rail if there's no top rail label.
Command Variants
W # Paste JSON, save to active slot
W 5 # Paste JSON, save to slot 5
W /file.json # Load from file, save to active slot
W /file.json 5 # Load from file, save to slot 5
After Import
Use < to cycle through slots to activate your imported circuit, or <5 to jump straight to slot 5. An import into the active slot is applied to the hardware immediately, an import into another slot just sits in that slot's file until you select it.
Terminal Compatibility
Or you can use any terminal emulator you like, iTerm2, xTerm, Tabby, Arduino IDE's Serial Monitor, whatever. The TUI is all handled from the Jumperless itself so it just needs something to print text.