Skip to content

Add Open Embedded Probe and 1209:4F45 (OEP probe, OpenEmbeddedProbe firmware) - #1296

Merged
cnlohr merged 1 commit into
pidcodes:masterfrom
Open-Embedded-Probe:add-open-embedded-probe-4f45
Oct 2, 2026
Merged

cnlohr merged 1 commit into
pidcodes:masterfrom
Open-Embedded-Probe:add-open-embedded-probe-4f45

Conversation

@tanakamasayuki

Copy link
Copy Markdown
Contributor

This requests one PID, 1209:4F45 ("OE"), for USB devices running firmware built from the OpenEmbeddedProbe Arduino library, and adds the organisation page for Open Embedded Probe.

What it is

  • Open Embedded Probe (OEP) is an open protocol for probes used in embedded development: a debugger, a target console and a test fixture driven by any host through one protocol.
  • Specification: https://github.com/Open-Embedded-Probe/oep-spec
  • Firmware (this PID): https://github.com/Open-Embedded-Probe/oep-probe-arduino, MIT, LICENSE in the repository. It is in the Arduino Library Manager as OpenEmbeddedProbe.
  • It runs on off-the-shelf ESP32-P4, RP2350 and RP2040 development boards, so there is no PCB of our own. The USB interfaces are vendor bulk, HID and CDC.

Why one PID

Checks

  • 1209/4F45 is not in this repository and not in any open pull request (checked 2026-10-02).
  • python test/validate_pids.py reports no errors.

Copilot AI balanced review requested due to automatic review settings October 2, 2026 09:06

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

tanakamasayuki added a commit to Open-Embedded-Probe/oep-spec that referenced this pull request Oct 2, 2026
…opened (awaiting review)

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@cnlohr

cnlohr commented Oct 2, 2026 •

Copy link
Copy Markdown
Collaborator

@tanakamasayuki a few notes:

  1. Please only use yourself as the committer when contributing to this repository, you may need to force-push this branch so that it only has you, or you are free to open a new PR.
  2. Please prominently include wiring diagrams or a schematic of your part in the linked repository. It is not immediately clear how one would wire up the listed processors your repository supports.

Please @ me with your reply so I will be notified.

@tanakamasayuki
tanakamasayuki force-pushed the add-open-embedded-probe-4f45 branch from 080bf79 to b2f9600 Compare October 2, 2026 10:38
@tanakamasayuki

Copy link
Copy Markdown
Contributor Author

@cnlohr

Thanks for the review.

Committer: the branch has been force-pushed and now holds a single commit (b2f9600) authored and
committed by me only.

Wiring diagrams: OpenEmbeddedProbe is firmware only - there is no board or circuit of our own. It runs
on stock development boards of the supported microcontrollers (ESP32, ESP32-P4, RP2040/RP2350), so no
schematic exists to publish. Wiring also needs no fixed pin map:

  • Every debug wire (SWD-style 1-/2-wire protocols) is bit-banged, so any free GPIO of the probe board
    can be wired to the target's debug lines. Pins are fixed only where a hardware peripheral is used
    (e.g. the UART fixture on an RP2040/RP2350 uses UART0's pins; analog capture uses ADC pins); the
    README lists them per chip.
  • After wiring, the host tool scans the probe's pins to find which ones the target's debug lines and
    reset line are on.
  • Once the debug link is up, the host drives the target's own GPIOs through it and finds the remaining
    connections (UART, power switch, etc.) the same way.

So the user connects free GPIOs to the target in any order and lets the tool find the map. I have added
a "Wiring" section to the repository README explaining this:
https://github.com/Open-Embedded-Probe/oep-probe-arduino#wiring-no-schematic-no-fixed-pin-map

@cnlohr

cnlohr commented Oct 2, 2026

Copy link
Copy Markdown
Collaborator

A diagram with a recommended pinout configuration is preferred for this sort of thing, but I am willing to accept it in this case.

@cnlohr cnlohr left a comment •

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Multiple hardware platforms, uses any GPIO on platform, so compatible with ESP32-P4, ESP32, RP2040 or RP2350 boards. Comes with picture of board working. License is MIT license. Code is all C++, built on Arduino platform.

@cnlohr
cnlohr merged commit a600a92 into pidcodes:master Oct 2, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants