Prepare the hardware host
-
Set up the remote hardware bridge, then run
/bridgein chat and select it. -
Install probe-rs on the bridge host as your normal user, not as root, so the bridge can find it:
The bridge must also have permission to access the USB probe.
- Connect the probe to the target’s reference voltage, ground, and the SWD or JTAG signals the board requires. Power the target as its board documentation describes.
-
Identify the exact chip and probe. List probes with
embedder bridge exec <name> probe-rs list, and check chip names withembedder bridge exec <name> probe-rs chip list. - Build an ELF for that target and note its path in the project.
not installed with a fix. Then ask Embedder to confirm the target:
Program and start the target
After a successful flash with a chip you named, Embedder saves the board on the bridge so later flash and RTT requests find it.
A successful download can still be followed by a failed reset. The result then ends with a warning that the firmware may not be running. Check it before you assume the application started.
When a bridge board has no MCU but has an OpenOCD target and a supported debug interface, Embedder flashes it with OpenOCD instead. See Flashing firmware.
Capture RTT after programming
The firmware must include RTT output. On a bridge, Embedder reads RTT from the artifact you flashed through Embedder earlier in the same session, so flash the matching ELF first. Then request a bounded capture:Choose debugging separately
For breakpoints, stepping, and memory inspection, use the J-Link or OpenOCD guide. Using probe-rs for bridge flashing doesn’t make it Embedder’s debugger.Troubleshoot
- probe-rs not installed:
embedder bridge doctorreports Flasher (probe-rs) asnot installed. Install probe-rs on the bridge host as your normal user, then run the check again. - Chip unsupported: compare the exact chip name with
probe-rs chip liston the bridge host. - No auto-detectable target: the bridge has no saved board. Give the exact chip name in your request.
- Multiple probes or multiple targets: give the intended probe as
VID:PID:Serial, or name the board or chip. - Probe busy: Embedder retries briefly when a previous command still holds the probe. A
device busyresult means another operation on the bridge still holds that probe or board. Wait for it to finish, then retry. - Download succeeded but no boot: check the reset result, target power, and the firmware’s output transport.
- RTT needs a flashed ELF: nothing was flashed to this bridge in the current session. Preserve any fault evidence before you decide to program.