Pinouts

Adafruit PyBadge is the size of a credit card, but it's loaded with all kinda of goodies. The front has buttons, LEDs, a light sensor, and a built-in display.

The back features various connections for add-ons, space for a speaker and a battery, a tiny built-in speaker, an accelerometer and more. Let's take a look!

Microcontroller and Flash

  • The main processor chip is the ATSAMD51J19 Cortex M4 running at 120MHz with 3.3v logic/power. It has 512KB of Flash and 192KB of RAM.
  • We also include 2 MB of QSPI Flash for storing images, sounds, animations, whatever!

On/Off Switch

  • On/Off switch - Powers off the board. Even if plugged in, the board won't work if switched to off. You can charge the battery when the board is off, but the USB device will not be active or any other electronics

Power

  • The On/Off switch is located on the top.
  • There is one USB port on the board. On the left side, towards the bottom, is a USB Micro port, which is used for powering and programming the board.

  • There's two ways to power your PyBadge. The best way is to plug in a 3.7/4.2V Lipoly battery into the JST 2-PH port. You can then recharge the battery over the Micro USB jack. You can also just run the board directly from Micro USB, it will automatically 'switch over' to USB power when that's plugged in.
  • Pin A6 is connected to a voltage divider which gives half the current battery voltage. You can read the battery voltage by using the Arcada library function readBatterySensor() (it multiplies by two to give the actual voltage), by using analogRead(A6) in Arduino, or by using analogio.AnalogIn(board.A6) in CircuitPython.

Display

  • 1.8" TFT display - The front features a 160x128 pixel color display.

Buttons

  • Buttons - There are 8 buttons on the front: A, B, Select, Start and four arranged in a d-pad. These buttons do not connect to GPIO pins directly. Instead they connect to an 8-channel shift register to save pins. This doesn't matter to you as long as you use the Arduino/MakeCode/CircuitPython functions to read the button presses

Light Sensor and NeoPixels

  • Light sensor (A7)  - There is an ambient light sensor on the top, which points through to the front. The light sensor is an analog input, connected to board.LIGHT (CircuitPython) or A7 (Arduino) you can read it as any analog value ranging from 0 (dark) to 1023 (in Arduino) or 65535 (CircuitPython) when bright.
  • NeoPixels (D8) - On the PyBadge there are also 5 individually addressable RGB NeoPixel LEDs located on the front of the board along the bottom middle. If you have a PyBadgeLC there is only 1 NeoPixel in the center. The are connected to board.NEOPIXEL (CircuitPython) or 8 (Arduino)

Light Sensor and Accelerometer

  • Accelerometer - The PyBadge has an accelerometer located near the middle, above the I2C connector. It is an LIS3DH. The PyBadge LC does not include an accelerometer

 

  • Light sensor (A7)  - There is also an ambient light sensor on the top, which points through to the front. The light sensor is an analog input, connected to board.LIGHT (CircuitPython) or A7 (Arduino) you can read it as any analog value ranging from 0 (dark) to 1023 (in Arduino) or 65535 (CircuitPython) when bright.

I2C and Digital/Analog Connectors

These are available on the PyBadge but not the PyBadge LC

  • There is a 4-pin JST I2C connector in the center on the bottom, that is STEMMA and Grove compatible. You can access VCC power and ground as well as a level-shifted SDA & SCL connection. You can change VCC from 5V (default) to 3V by cutting/soldering the solder jumper to the right of the D3 connector.
  • On the bottom are two connectors labeled D2 and D3. These are 3-pin JST digital or analog connectors for sensors or NeoPixels. These pins can be analog inputs or digital I/O.

Speaker and Speaker Connector

There is a speaker and a speaker connector.

The grey squarish bit on the top corner is a speaker. There is a small class D amplifier connected to the speaker so it can get quite loud!

There is also a speaker connector on the PyBadge (not LC), which is a Molex PicoBlade. You can attach one of the speakers available in the Adafruit shop, or solder a connector to your favorite speaker. If you do, cut the small solder jumper to the right of the buzzer so that you only have one speaker activated (and also it will be louder!)

Feather Headers

These are available on the PyBadge but not the PyBadge LC

  • You can easily attach FeatherWings to the back of your PyBadge using the convenient "Feather Headers" on the back. Located in the middle, they break out all the same pins you have access to on a Feather board, allowing use of any of our wide range of FeatherWings. Easily add all kinds of functionality to your PyBadge! The GPIO is all 3.3V logic.
This guide was first published on May 25, 2019. It was last updated on May 25, 2019. This page (Pinouts) was last updated on Nov 20, 2019.