Warn on strapping pins instead of rejecting them #128
Loading…
Reference in a new issue
No description provided.
Delete branch "feat/yaml-strapping-warning"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
YN-9. Real wiring uses strapping pins (the bathroom PIR on D0, the lighting kitchen ceiling on GPIO 5) and boots fine, so the generator now warns instead of failing. It applies to every endpoint, input or output, for a single
pinand for eachpinsentry. The check is in one place,parse_pin, which collects a one-line message naming the file, field and pin and saying the device must not hold the pin at the wrong level during power-up.renderprints the warnings to stderr, so they show in the build output. CAN-board and input-only rejections are unchanged.The schema's per-board pin lists now include strapping pins for every type, and the pin descriptions name which ones the generator warns about, so a front end can too. README states the new rule.
Tested: Python 39 (was 36), none skipped locally. Tests cover a warning for an input, an output and a
pinsentry (namingpins[1]), and the stderr output; disabling the warning fails them. A realgen_lolin32build with a pin 5 load printed the warning and succeeded. All three fixtures build.