Repository navigation
Name the caller's own fix in pod refusals; consistent eFuse rail names - #26
Merged
Merged
Conversation
The firmware spells some fixes as raw protocol commands ("set it with la_voltage (mv 1800 or
3300)", "release it with {"cmd":"gpio","la":4,"mode":"off"}"). The SDK now rewrites them into
SDK calls (BenchPod(conn, la_voltage=3.3), the benchpod_la_voltage fixture, bp.set_la_voltage,
bp.release_gpio(4), bp.disable_i2c_sensor(), bp.disable_gps(), closing the UART/SPI session,
bp.set_pull(7, False), ...) and the MCP server into tool names (set_la_voltage,
gpio_release(la=[4]), uart_close, disable_i2c_sensor, disable_gps, set_pull, ...).
Error classes, attributes and the leading words of each message are unchanged;
firmware_message keeps the pod's own text and unknown hints pass through. The MCP rewrites
from firmware_message itself, so it reads the same with any supported SDK release.
MCP instructions, wiring reference and tool/result descriptions now say "internal 5 V
(efuse 1)" and "external (efuse 2)".
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
First-time-user UX for pod refusals and power wording.
SDK (
embeddedci): aFirmwareErrorwhose fix the firmware spells as a raw protocol command now names the SDK call:uart_proxy_start: la voltage not set; set the board's I/O voltage first: BenchPod(conn, la_voltage=3.3) (1.8 for a 1.8 V target), the benchpod_la_voltage fixture in conftest.py, or bp.set_la_voltage(3.3)uart_proxy_start: pin conflict: LA4 is in use by gpio; release it with bp.release_gpio(4)bp.disable_i2c_sensor(),bp.disable_gps(), close the session frombp.open_uart()/bp.open_spi(), wait for the flash; pull conflictbp.set_pull(7, False); gpio-outputbp.gpio(4, "output");bp.fpga_image(0);bp.loop_input().MCP (
embeddedci-mcp): the same refusals name tools, rewritten fromfirmware_messageso the text is the same with any supported SDK:FirmwareError: la: la voltage not set; call set_la_voltage first with the DUT's I/O voltage (1.8 or 3.3)PinConflictError: uart_proxy_start: pin conflict: LA4 is in use by gpio; release it with gpio_release(la=[4])uart_close,disable_i2c_sensor,disable_gps,set_pull(las=[7], enabled=false),gpio_mode(la=[4], mode="output"),fpga_image(image="loop"),loop_input.Instructions, wiring reference and tool/result descriptions now say "internal 5 V (efuse 1)" and "external (efuse 2)" (tools_surface.json refreshed: descriptions only).
Compatibility
Error classes, attributes (
la,function,cmd) and each message's leading words (la voltage not set,pin conflict: LA4 is in use by gpio) are unchanged, soclassify_firmware_errorand caller matching keep working.firmware_messagestill holds the pod's original text; hints not in the table pass through unchanged. No public API added or removed.Hint texts come from benchpod-firmware
stm32h563/src/la_pins.c(release_hint, pull and gpio-output checks),command_handler.c,command_handler_dap.c,command_handler_dac.con origin/main.Tests
Unit only (no hardware):
embeddedci568 passed / 175 skipped,embeddedci-mcp145 passed / 12 skipped,embeddedci-openhtf74 passed,scripts12 passed.🤖 Generated with Claude Code