Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Adafruit Feather RP2040 Prop-Maker #7877

Merged
merged 2 commits into from
Apr 26, 2023

Conversation

dhalbert
Copy link
Collaborator

@ladyada

Board name

Name is "Prop-Maker", with a hyphen, to match the FeatherWing name; not "PropMaker", and not "Prop Maker".

Pin names

Board-specific pin names were a bit tricky to decide on. Let me know if you have other ideas.

I2S pins

I2S pins match the argument names for the constructor:

audiobusio.I2SOut(
    bit_clock: microcontroller.Pin,
    word_select: microcontroller.Pin,
    data: microcontroller.Pin,
    *, left_justified: bool)
  • board.I2S.BIT_CLOCK
  • board.I2S_DATA
  • board.I2S_WORD_SELECT

Button pin

The button terminal is called EXTERNAL_BUTTON to distinguish it from the on-board board.BUTTON, which is the name it has on the other similar RP2040 Feathers. I decided against BUTTON2 or similar. EXTERNAL_BUTTON is unambiguous.

  • board.EXTERNAL_BUTTON

NeoPixel strip control

As with the external button, calling them EXTERNAL_NEOPIXELS and EXTERNAL_NEOPIXELS_POWER makes them unambiguous, and clearly separate from the on-board board.NEOPIXEL. It looks to me like the POWER control is active high. If not, let me know and I'll add _INVERTED.

  • board.EXTERNAL_NEOPIXELS
  • board.EXTERNAL_NEOPIXELS_POWER

Servo

Not EXTERNAL_SERVO, because there is no onboard servo :)

  • board.SERVO

Accelerometer

  • board.ACCELEROMETER_INTERRUPT

@tannewt tannewt requested a review from ladyada April 19, 2023 17:01
@dhalbert
Copy link
Collaborator Author

@ladyada

Proto board tested completely:

  • Tested all pins are mapped correctly, checking that they can drive an LED.
  • Tested external neopixel capability.
  • Tested external power switching on/off.
  • Tested I2S amp by playing an MP3.
  • Tested EXTERNAL_BUTTON as an input.
  • Tested STEMMA I2C with a BNO055
  • Tested accelerometer, including tap detection via interrupt pin, and tested state of interrupt pin
  • Tested battery power capability

I2S_MOD is called out in the schematic, but is permanently pulled up (no spare pin to use to control it)

@dhalbert dhalbert merged commit be6e90c into adafruit:main Apr 26, 2023
14 checks passed
@dhalbert dhalbert deleted the rp2040-propmaker branch April 26, 2023 04:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants