Repository navigation
Getting Started
Mirrored from wiki/Getting-Started.md by the sync workflow. Direct edits in the GitHub Wiki UI will be overwritten on the next push to main — edit upstream instead.
Once your hardware is assembled, flash the firmware and connect. Flashy can interact with any CAN-based automotive module — ECMs, TCMs, BCMs, and more — using diagnostic services, reversing workflows, and flash programming routines.
- Download the latest Flashy-Tool.zip
- Extract it somewhere convenient (no install required)
- Plug the Feather into your PC via USB
- Double-click
firmware.uf2— the Feather will reboot as a USB drive calledFEATHERBOOT. Drag the.uf2onto it and it will flash itself automatically. - Run
detect_port.exeto find which COM port your Feather is on - Use the
.batlauncher scripts for common operations (read, write, VIN scan, etc.)
Requires PlatformIO and Python 3.8+.
git clone https://github.com/kidturbo/Flashy.git
cd Flashy
pio run -t uploadPlatformIO auto-detects the Feather and flashes it. See CONTRIBUTING.md for full build details.
Most users never need to touch a Python script — the prebuilt .bat launchers in Option A cover VIN scan, read, write, capture, and flash firmware. But the tools/ folder has more — OBD-II Clear DTC, Mode 9 dump, RTC sync, and the E92A authentication helpers — that aren't in the bundled .exe set. Three ways to run them, easiest first:
The cleanest no-IDE option:
- Install Python 3.9+ — check "Add to PATH" during install.
pip install pyserial pycryptodome- Get Windows Terminal from the Microsoft Store (already on Win 11).
- Right-click your
Flashyfolder → Open in Terminal → run:python tools/obd2/scan_full.py --port COM13 --json python tools/set_rtc_local.py python tools/obd2/clear_dtc.py --port COM13
Git Bash works the same way if you prefer a Unix-style shell.
If you want a click-to-run editor without VS Code's complexity, Thonny is one download, opens your repo, has a Run button, and includes a built-in shell. Good for someone new to Python.
PyCharm Community Edition is a full professional IDE — free for open-source and personal use. Closest like-for-like swap with VS Code in feature set, just JetBrains-flavored. Run buttons, debugger, terminal, and project view all built in.
The repo includes a .vscode/extensions.json recommendation. When opening the repo in VS Code, accept the "Install recommended extensions" prompt to get:
- PlatformIO IDE — build / upload firmware, serial monitor.
-
Python (Microsoft) — run / debug
.py.
The full per-tool catalog and one-line descriptions live on the Tools Reference page.
Open a terminal (PuTTY, TeraTerm, Arduino IDE Serial Monitor) at 115200 baud on the Feather's COM port.
You should see the Flashy banner when the board boots or you press reset:
Flashy J2534 Pass-Thru vX.Y.Z
Type HELP for commands, MENU for interactive mode
>
Type MENU for the interactive module-select interface, or type commands directly.
With the CAN bus connected (key in RUN for OBD-II, or module powered up on a bench harness), the easiest way to do your first read is the interactive MENU:
MENU
The menu walks you through:
- Pick your module — E38, E67, T87, T87A, etc. (Flashy auto-sets the CAN IDs and seed-key algorithm for you)
- Pick an action — read, write, diagnostics, or raw UDS
- Pick a destination — stream the read to the SD card or back to the PC
CAN is already initialized at boot (AUTOINIT) and the baud is auto-detected, so you don't need to run INIT or SETID first.
See the ECU Reference Guide for the full list of supported modules.
The FULLREAD will stream the module's flash to the SD card. Expect a few minutes depending on flash size and connection speed.
Prefer typing commands directly? See Advanced: Direct Commands for the raw
INIT/ALGO/AUTH/FULLREADworkflow and a full command reference.
The NeoPixel on the Feather shows the current state:
| Color | Meaning |
|---|---|
| Off | Idle, waiting for commands |
| Green | Connected to module, authenticated |
| Blue | Reading flash |
| Yellow | Writing flash |
| Purple | BAM mode — waiting for module reset |
| Red | Error — check serial output for details |
| Strobe | Success celebration |
- Downloads — what's in the release zip
- Documentation Index — full protocol, module reference, unlock recipes
-
Tools Reference — every Python helper with a one-line description, including the cross-vendor
tools/obd2/Clear DTC and Mode 9 scan utilities - Report a Bug — if something goes wrong
- Request new module support — for BCMs or any CAN node not yet on the list