<< All versions

Skill v1.0.1

currentAutomated scan100/100
bakesheep/emberprobe-mcu-flash-debug/mcu-variables

+11 new

──Details
PublishedNovember 8, 2026 at 03:08 AM
Content Hashsha256:2241abb3fe6a1670...
Git SHAcd507a016a64
Bump Typepatch
Compare with v1.0.0
──Files
Files (1 file, 3.2 KB)
SKILL.md3.2 KBactive
SKILL.md · 34 lines · 3.2 KB

name: mcu-variables description: Read, monitor, trend, export, or explicitly modify MCU variables resolved from ELF and DWARF. Use for C/C++ globals and supported runtime object paths, scalar trends, CSV history, requested variable tuning, or shared sampling. Use paused debug inspection for frame-local variables. metadata: version: "1.0.1"


MCU Variables

Before you run

  • MCP first: if this session provides EmberProbe MCP tools (such as variables_read), use them; the scripts here are the fallback. The authorization and hardware rules on this page apply to both.
  • Applies to: listing, reading, controlling shared sampling, trending, or exporting variables, and — only on explicit request — modifying one.
  • Requires: the EmberProbe Agent Bridge; live reads/writes also need a connected, powered target. Listing ELF symbols and exporting CSV from an existing chart do not touch the probe.
  • Preconditions: an ELF is selected for reads; starting sampling uses the configured probe and current watch lists, sharing a compatible debug connection when available. Stopping or querying sampling needs no ELF or connected probe. A write needs plan-bound confirmation or an applicable workspace permission explicitly reported by the Bridge (including the sidebar full-access grant).
  • Side effects: reads are non-intrusive; sampling controls change the shared sidebar/chart state; scripts/write.js changes target RAM and verifies it by readback.
  • Success evidence: reads return resolved values (preserve exact 64-bit valueText); writes return the readback verification. A read or export success does not prove the firmware behaves correctly.

For failure handling, retry limits, cross-skill routing, and result scoping, read ../_emberprobe/agent-workflow.md.

Choose the narrowest operation that satisfies the request:

For frame-local C++ values and GDB's class/STL summaries and paged expansion, use mcu-debug-control's paused inspection workflow. This skill reads ELF/DWARF globals and their supported runtime layouts; it does not substitute for task/frame-local GDB inspection.

  • For listing, reading, sampling, trending, chart integration, CSV export of chart history, or a CSV snapshot of current array/struct values, read references/reading.md and use scripts/read.js.
  • For starting, stopping, or querying persistent sidebar/chart sampling, read the sampling controls in references/reading.md and use scripts/sampling.js.
  • Only when the user explicitly asks to set, tune, override, or otherwise modify a variable, read references/writing.md and use scripts/write.js.

A name defined in several source files fails with VARIABLE_AMBIGUOUS; pick the intended candidate (ask the user if unclear) and use its file::name form, as described in references/reading.md.

Never turn a read or monitoring request into a write. A write request starts planning but is not itself approval to execute the returned write plan. Preserve exact 64-bit valueText fields when reporting values, and base failures on the structured stderr diagnostic instead of guessing a probe or service cause.

← v1.0.0All versions