Goal: Fix two defects in .claude/skills/fpga-synth/SKILL.md — a foreign hardcoded bitstream path and a board target that matches no connected hardware.
Context
Now that the FPGA hardware is physically connected (ALINX AX7203 + P201/P203 Mini), P0 toolchain bring-up is unblocked and the fpga-synth skill will actually be invoked against real silicon. Two bugs make it wrong today:
-
Line 13 lists available bitstreams via ls -la /Users/playra/trinity-w1/fpga/openxc7-synth/*.bit — a foreign user (playra) and a nonexistent tree (trinity-w1). On this machine the user is ssdm4 and the repo lives at /Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity, where the bitstreams actually exist (fpga/openxc7-synth/*.bit: blink.bit, trinity_core.bit, vsa_coproc.bit, etc.). The ls returns nothing on this box, so the skill shows an empty bitstream list. Same playra/trinity-w1 defect class flagged in AUTO_FLASH.sh, JTAG_TROUBLESHOOTING.md, and both FLASH_HISTORY.md files — this issue fixes only the skill.
-
Lines 31-32 declare Board Target: Artix-7 (xc7a35t) via openXC7. No connected board is xc7a35t. That part number came from the stale constraints/arty_a7.xdc (Digilent Arty A7). The real connected boards are the ALINX AX7203 (xc7a200t) and the P201/P203 Mini (xc7z020).
The skill file (.claude/skills/fpga-synth/SKILL.md, target repo checkout at /Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity) is otherwise fine — steps 1-5 and the Key Files section stay.
Tasks
Acceptance criteria
grep -nE 'playra|xc7a35t|trinity-w1' .claude/skills/fpga-synth/SKILL.md → no matches.
- From
/Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity, the line-13 command lists the actual bitstreams under fpga/openxc7-synth/ (non-empty).
- The
Board Target section names exactly xc7a200t (AX7203) and xc7z020 (Mini) — and no longer names xc7a35t.
Dependencies
None (blocked_by: none). Independent P0 doc fix; peer to the broader /Users/playra path cleanup across fpga/ scripts and docs, and to the new on-disk tri-net skill — none of those block this.
phi^2 + phi^-2 = 3
Goal: Fix two defects in
.claude/skills/fpga-synth/SKILL.md— a foreign hardcoded bitstream path and a board target that matches no connected hardware.Context
Now that the FPGA hardware is physically connected (ALINX AX7203 + P201/P203 Mini), P0 toolchain bring-up is unblocked and the
fpga-synthskill will actually be invoked against real silicon. Two bugs make it wrong today:Line 13 lists available bitstreams via
ls -la /Users/playra/trinity-w1/fpga/openxc7-synth/*.bit— a foreign user (playra) and a nonexistent tree (trinity-w1). On this machine the user isssdm4and the repo lives at/Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity, where the bitstreams actually exist (fpga/openxc7-synth/*.bit:blink.bit,trinity_core.bit,vsa_coproc.bit, etc.). Thelsreturns nothing on this box, so the skill shows an empty bitstream list. Sameplayra/trinity-w1defect class flagged inAUTO_FLASH.sh,JTAG_TROUBLESHOOTING.md, and bothFLASH_HISTORY.mdfiles — this issue fixes only the skill.Lines 31-32 declare
Board Target: Artix-7 (xc7a35t) via openXC7. No connected board isxc7a35t. That part number came from the staleconstraints/arty_a7.xdc(Digilent Arty A7). The real connected boards are the ALINX AX7203 (xc7a200t) and the P201/P203 Mini (xc7z020).The skill file (
.claude/skills/fpga-synth/SKILL.md, target repo checkout at/Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity) is otherwise fine — steps 1-5 and the Key Files section stay.Tasks
SKILL.mdline 13: change!\ls -la /Users/playra/trinity-w1/fpga/openxc7-synth/.bit 2>/dev/null`to the repo-relative!`ls -la fpga/openxc7-synth/.bit 2>/dev/null`` (the skill runs from repo root; no absolute foreign path).SKILL.mdlines 31-32: replace the singleBoard Targetline with BOTH real connected boards and their roles:ALINX AX7203 — Artix-7 xc7a200t (1GB DDR3, 2x GbE, HDMI in/out) — bench compute / mesh+video demo node, openXC7 synth flowP201/P203 Mini — Zynq-7020 xc7z020 (dual Cortex-A9 + AD9361 SDR) — flying radio node; PL synth TBD (needs xc7z020 chipdb + PS boot, not via openXC7 today)/Users/playraorxc7a35tortrinity-w1string remains inSKILL.md(grep -nE 'playra|xc7a35t|trinity-w1' .claude/skills/fpga-synth/SKILL.mdreturns nothing).ls -la fpga/openxc7-synth/*.bitlists real.bitfiles.Acceptance criteria
grep -nE 'playra|xc7a35t|trinity-w1' .claude/skills/fpga-synth/SKILL.md→ no matches./Users/ssdm4/Desktop/PROJECTS/CLAUDE/trinity, the line-13 command lists the actual bitstreams underfpga/openxc7-synth/(non-empty).Board Targetsection names exactlyxc7a200t(AX7203) andxc7z020(Mini) — and no longer namesxc7a35t.Dependencies
None (
blocked_by: none). Independent P0 doc fix; peer to the broader/Users/playrapath cleanup acrossfpga/scripts and docs, and to the new on-disktri-netskill — none of those block this.phi^2 + phi^-2 = 3