BenchPod AI agent
An AI agent that tests and debugs your board through the BenchPod: it powers the board, reads and types into its console, captures logic and analog signals, emulates the sensors it expects and flashes firmware. You ask in plain words; it calls the BenchPod tools and shows you the logs and captures. The tools are the BenchPod MCP server's, the same everywhere.
Four ways to use it
| Where | Model | Bench | |
|---|---|---|---|
Claude or Codex Your own Claude or Codex, with the BenchPod plugin | Your subscription | Your pod: LAN, USB or cloud | |
AI agent tab The pod workspace on embeddedci.com (the AI agent tab) | Claude Haiku 5.5, provided by EmbeddedCI | Your registered pod, over the cloud | |
BenchPod Desktop A free, open source desktop app | Any model: local (Ollama, LM Studio) or your own key | Your pod: LAN, USB or cloud | |
Live demo In the browser, no account | Claude Haiku 5.5, provided by EmbeddedCI | A simulated pod and board |
The model matters: a stronger one reads logs more carefully, plans its steps and needs fewer tool calls. The AI agent tab and the demo use an inexpensive model so they cost you nothing; with Claude, Codex or the desktop app you choose.
What to ask
Say what you want done and how you will know it worked. The agent picks the tools. Some requests that work well:
The bench
- “What is wired to this pod? Check the status and the wiring.”
Power and reset
- “Power-cycle the board and show me its boot log.”
- “Measure the current the board draws while it idles.”
- “Reset the target and tell me what it prints.”
UART console
- “Open the console, run the info command and tell me the firmware version.”
- “Capture the UART for 5 seconds and summarize any errors.”
Sensor emulation
- “The node says its sensor is missing. Find out why and fix it.”
- “Emulate a BMP280 at 30 °C and check the firmware reads it.”
Logic and GPIO
- “Capture the I2C lines for 200 ms and decode the transactions.”
- “Is the alarm pin high or low right now?”
Analog
- “Drive 1 V on the 3.3 V DAC output and capture the ADC.”
- “Generate a 100 Hz sine and capture it through the cal1 loopback.”
Firmware
- “Flash build/app.elf and confirm it boots. (Claude, Codex and the desktop app: the file is on your computer.)”
Good habits: let it read the wiring first (or tell it what is connected where), set the board's I/O voltage once, and ask it to quote the log lines or measurements its answer rests on.
The tools it can use
Every chat lists the tools its agent may use when it opens, and an N tools button beside the message box lists them again. The full tool reference has each tool's parameters, units and defaults. What each place offers:
- Claude, Codex and the desktop app: every tool, flashing from a file on your computer included.
- The AI agent tab: every tool except those that pick a connection, read a file on our server (flash from a file, SPI flash from a file), send raw firmware commands, or change the pod's network settings. Flash a build from the Flash DUT tab, the CLI or CI instead.
- The live demo: the tools the simulated bench answers: power, UART, logic capture and decoding, the ADC and DAC, sensor emulation and pulls.
What keeps the hardware safe
The limits are enforced by the app before a tool runs, not by asking the model nicely:
- It asks first. Power, reset, flashing, DAC and current outputs, pulls, GPIO writes, the LA voltage, wiring and pod settings wait for your Allow (the AI agent tab and the desktop app). A declined call is not run; the agent asks what you want instead.
- Output ceilings. The desktop app refuses a DAC voltage or loop current above the limits in its settings, whatever the model asks for.
- Bounded runs. Each message has a budget of tool calls and model turns; when it runs out, the agent stops and says where it got to.
- The pod is shared fairly. The AI agent tab holds the pod only while it works and lets it go 45 seconds after its last tool call, so your other tabs and your team are not locked out. A new conversation releases it at once.
Your data and the cost
- AI agent tab. What you type and what the tools return (logs, captures from your pod) are sent to the model through OpenRouter, with training on it opted out. EmbeddedCI does not store the conversation; it keeps only usage. The tab is free: each user has daily free credits, shown under the message box; they reset at midnight UTC.
- Live demo. The bench is simulated. Messages are kept 30 days to prevent abuse. You start with 10 messages; leave your email for a code that adds 100 more (twice at most).
- Claude, Codex and the desktop app. The conversation goes to the model you chose; with a local model nothing leaves your computer. The desktop app keeps its key in the system keychain and a log of every tool call on your computer.
Troubleshooting
- “Pod in use” in the workspace while the agent works: it holds the pod until 45 seconds after its last call. Click New conversation in the AI agent tab to release it now.
- “The agent could not reach its model just now”: the model provider refused or was busy. The message did not count; send it again in a minute.
- A tool “is not available here”: that place does not offer it (see the tools it can use). Use Claude, Codex, the desktop app or the CLI for it.
- It reads half a console line: ask it to wait for the console's prompt (for example
>) when it reads the UART. - Flash, UART or capture refuse to run: the board's I/O voltage is not set. Tell the agent 1.8 V or 3.3 V, or set it in the workspace.