zmkfirmware / zmk

ZMK Firmware Repository
https://zmk.dev/
MIT License
2.67k stars 2.74k forks source link

fix(boards): nrf boards missing SPI definitions for pro_micro pins at the board level #2280

Closed sadekbaroudi closed 5 months ago

sadekbaroudi commented 5 months ago

nice nano didn't have definitions for SPI in pinctrl and dtsi, requiring users to manually define in their shield definitions if they wanted to use SPI. This should be defined at the board level.

sadekbaroudi commented 5 months ago

@petejohanson @caksoylar

Does this look good?

petejohanson commented 5 months ago

@petejohanson @caksoylar

Does this look good?

Seems reasonable to me! Have you had a chance to test at least the nano changes with an SPI peripheral?

sadekbaroudi commented 5 months ago

@petejohanson @caksoylar

Seems reasonable to me! Have you had a chance to test at least the nano changes with an SPI peripheral?

I just confirmed it be working (with the help of @rmuraglia) with a nice!nano and cirque trackpad, hand wired to these pins on a VIK connector, which was defined to use the pro micro pins.

sadekbaroudi commented 5 months ago

On a related note, I looked at the github action for build testing. Should it also have a test to verify that various peripherals are compiled in as intended? (SPI, I2C, etc)

petejohanson commented 5 months ago

On a related note, I looked at the github action for build testing. Should it also have a test to verify that various peripherals are compiled in as intended? (SPI, I2C, etc)

Yeah, would be nice. We'd probably need an "interconnect specific shield" that would do &pro_micro_spi { status = "okay"; }; or &xiao_spi { status = "okay"; }; and then build, to test that in a way that worked across our supported hardware. Bit tricky to get right generically, but doable. Merging this for now, lacking that kind of automated testing.