Bus Visibility Scoreboard
Generated by bus_visibility_ratchet (crates/core/tests/bus_visibility.rs).
A ✓ means this bus produced decodable edges on a wire-channel probe after the family's canonical bring-up and a bit-asymmetric payload: every named line in Peripheral::line_names() edged, and an independent decoder recovered the payload. A — means no bus instance of that kind currently produces a decodable waveform on the from_config path.
This is NOT a pad-binding board. Binding answers the static question "what could ever be seen here"; a green tick here means a user can actually see a waveform. Derived from live SystemBus::from_config builds — never hand-edited.
Named exclusions
Chips that cannot yet produce edges for a bus are listed here with a reason — never silently skipped.
- atmega328p
- UART: USART0 registers live on the AVR CPU and are forwarded to the bus-side host; this harness drives bus MMIO, not the CPU, so no bring-up exists here
- I2C: AVR from_config I2C is generic type:i2c without PadLines cell
- SPI: AVR from_config SPI is generic type:spi without PadLines cell
- atsamd21
- UART: Nano 33 IoT twin uses generic type:uart (sercom layout); no UART bring-up for this chip family in the edge gate yet
- atsamd51
- UART: Metro M4 twin uses generic type:uart (sercom layout); no UART bring-up for this chip family in the edge gate yet
- atsamd51-pybadge
- UART: PyBadge variant of the atsamd51 twin: generic type:uart (sercom layout); no UART bring-up for this chip family in the edge gate yet
- efr32mg26
- UART: the Efr32s2 layout models the console TX/RX byte path but captures no baud divisor (CLKDIV), so bit_time_cycles() is None and no wire waveform is narrated — there are no edges to decode
- esp32
- SPI: Esp32Spi does not implement line_names()/wire_lines(); pad bindings exist but the wire channel is unpublished on this model
- esp32s3
- I2C: esp32s3.yaml is an address-map stub; from_config has no S3 I2C model
- SPI: esp32s3.yaml is an address-map stub; from_config has no S3 SPI model
- UART: esp32s3.yaml is an address-map stub; from_config has no S3 UART model
- esp32s3-zero
- I2C: esp32s3-zero.yaml inherits the S3 address-map stub
- SPI: esp32s3-zero.yaml inherits the S3 address-map stub
- UART: esp32s3-zero.yaml inherits the S3 address-map stub
- imxrt1064
- UART: no edge bring-up path for i.MX LPUART in this gate yet
- mkw41z4
- I2C: Kinetis I2C publishes no line_names / wire_lines (honest empty)
- SPI: no edge bring-up path for Kinetis DSPI in this gate yet
- UART: no edge bring-up path for Kinetis LPUART in this gate yet
- nrf51822
- I2C: no nRF51 legacy-TWI bring-up in this harness (the nRF52 arm drives TWIM)
- UART: no nRF51 legacy-UART bring-up in this harness (the nRF52 arm drives UARTE EasyDMA); bytes are proven by the microbit-v1 survival smoke
- nrf5340
- I2C: nRF5340 serial bank not yet edge-gated on from_config
- SPI: nRF5340 serial bank not yet edge-gated on from_config
- UART: nRF5340 serial bank not yet edge-gated on from_config
- nrf54l15
- I2C: nRF54L15 serial bank not yet edge-gated on from_config
- SPI: nRF54L15 serial bank not yet edge-gated on from_config
- UART: nRF54L15 serial bank not yet edge-gated on from_config
- nrf54lm20a
- I2C: nRF54L pad claims unwired: PSEL.PORT is 3 bits on this family and the claim engine decodes the nRF52840 1-bit field only, so no PadLines cell is installed and no wire waveform is narrated
- SPI: nRF54L pad claims unwired: PSEL.PORT is 3 bits on this family and the claim engine decodes the nRF52840 1-bit field only, so no PadLines cell is installed and no wire waveform is narrated
- UART: nRF54L pad claims unwired: PSEL.PORT is 3 bits on this family and the claim engine decodes the nRF52840 1-bit field only, so no PadLines cell is installed and no wire waveform is narrated
- ra4m1
- UART: Uno R4 Minima SCI2 uses generic type:uart (sci layout); no UART bring-up for this chip family in the edge gate yet
- rp2350
- I2C: rp2350 from_config bus not yet edge-gated (no line cells)
- SPI: rp2350 from_config bus not yet edge-gated (no line cells)
- UART: rp2350 from_config bus not yet edge-gated (no line cells)
| Chip | I2C | SPI | UART |
|---|---|---|---|
| atmega328p | — | — | — |
| atsamd21 | — | — | — |
| atsamd21g18a | — | — | — |
| atsamd51 | — | — | — |
| atsamd51-pybadge | — | — | — |
| efr32mg26 | ✓ | ✓ | — |
| esp32 | ✓ | — | ✓ |
| esp32c3 | ✓ | ✓ | ✓ |
| esp32c6 | ✓ | ✓ | ✓ |
| esp32s3 | — | — | — |
| esp32s3-zero | — | — | — |
| imxrt1064 | — | — | — |
| mkw41z4 | — | — | — |
| nrf51822 | — | — | — |
| nrf52832 | ✓ | ✓ | ✓ |
| nrf52833 | ✓ | ✓ | ✓ |
| nrf52840 | ✓ | ✓ | ✓ |
| nrf5340 | — | — | — |
| nrf54l15 | — | — | — |
| nrf54lm20a | — | — | — |
| ra4m1 | — | — | — |
| rp2040 | ✓ | ✓ | ✓ |
| rp2350 | — | — | — |
| stm32f103 | ✓ | ✓ | ✓ |
| stm32f401 | ✓ | ✓ | ✓ |
| stm32f401cdu6 | ✓ | ✓ | ✓ |
| stm32f405 | ✓ | ✓ | ✓ |
| stm32f407 | ✓ | ✓ | ✓ |
| stm32f411ceu6 | ✓ | ✓ | ✓ |
| stm32f746 | — | — | ✓ |
| stm32f767 | ✓ | ✓ | ✓ |
| stm32g071 | ✓ | ✓ | ✓ |
| stm32g0b1re | — | — | ✓ |
| stm32g474re | ✓ | ✓ | ✓ |
| stm32h563 | ✓ | ✓ | ✓ |
| stm32h735 | ✓ | ✓ | ✓ |
| stm32l073 | ✓ | ✓ | ✓ |
| stm32l476 | ✓ | ✓ | ✓ |
| stm32u545 | ✓ | ✓ | ✓ |
| stm32u575 | ✓ | ✓ | ✓ |
| stm32wb55 | ✓ | ✓ | ✓ |
| stm32wba52 | ✓ | ✓ | ✓ |