The Feather 32u4 Bluefruit LE is chock-full of microcontroller goodness. There's also a lot of pins and ports. We'll take you a tour of them now!
- GND - this is the common ground for all power and logic
- BAT - this is the positive voltage to/from the JST jack for the optional Lipoly battery
- USB - this is the positive voltage to/from the micro USB jack if connected
- EN - this is the 3.3V regulator's enable pin. It's pulled up, so connect to ground to disable the 3.3V regulator
- 3V - this is the output from the 3.3V regulator, it can supply 500mA peak
This is the general purpose I/O pin set for the microcontroller. All logic is 3.3V
- #0 / RX - GPIO #0, also receive (input) pin for Serial1 and Interrupt #2
#1 / TX - GPIO #1, also transmit (output) pin for Serial1 and Interrupt #3
- #2 / SDA - GPIO #2, also the I2C (Wire) data pin. There's no pull up on this pin by default so when using with I2C, you may need a 2.2K-10K pullup. Also Interrupt #1
- #3 / SCL - GPIO #3, also the I2C (Wire) clock pin. There's no pull up on this pin by default so when using with I2C, you may need a 2.2K-10K pullup. Can also do PWM output and act as Interrupt #0.
- #5 - GPIO #5, can also do PWM output
- #6 - GPIO #6, can also do PWM output and analog input A7
- #9 - GPIO #9, also analog input A9 and can do PWM output. This analog input is connected to a voltage divider for the lipoly battery so be aware that this pin naturally 'sits' at around 2VDC due to the resistor divider
- #10 - GPIO #10, also analog input A10 and can do PWM output.
- #11 - GPIO #11, can do PWM output.
- #12 - GPIO #12, also analog input A11
- #13 - GPIO #13, can do PWM output and is connected to the red LED next to the USB jack
- A0 thru A5 - These are each analog input as well as digital I/O pins.
- SCK/MOSI/MISO - These are the hardware SPI pins, used by the Bluefruit LE module too! You can use them as everyday GPIO pins if you don't activate the Bluefruit and keep the BLE CS pin high. However, we really recommend keeping them free as they should be kept available for the Bluefruit. If they are used, make sure its with a device that will kindly share the SPI bus! Also used to reprogram the chip with an AVR programmer if you need.
Since not all pins can be brought out to breakouts, due to the small size of the Feather, we use these to control the BLE module
- #8 - used as the Bluefruit CS (chip select) pin
- #7 - used as the Bluefruit IRQ (interrupt request) pin.
- #4 - used as the Bluefruit Reset pin
Since these are not brought out there should be no risk of using them by accident!
- RST - this is the Reset pin, tie to ground to manually reset the AVR, as well as launch the bootloader manually
- ARef - the analog reference pin. Normally the reference voltage is the same as the chip logic voltage (3.3V) but if you need an alternative analog reference, connect it to this pin and select the external AREF in your firmware. Can't go higher than 3.3V!
- DFU - this is the force-DFU (device firmware upgrade) pin for over-the-air updates to the Bluefruit module. You probably don't need to use this but its available if you need to upgrade! Check out the DFU Bluefruit Upgrades page for how to use it. Otherwise, keep it disconnected.
On the back we also have SWDIO/SWCLK/RESET pins, these are used for programming the Bluefruit LE module itself.
SWD Debug Input
You normally should not connect to the SWDIO and SWCLK pins unless you want to wipe out the Bluefruit LE module firmware for some reason, such as flashing an entirely custom firmware image written by yourself, though this is entirely at your own risk since it will wipe the Bluefruit firmware! Flashing firmware or using the SWD interface will require something like a Segger J-Link EDU Mini to communicate via the debug controller inside the nRF51822.
The Reset pad (not to be confused with the 0.1" circular RST pin!) is the factory reset pin, which is also rarely used, but you can use it to set the module back to the factory default settings if it gets really messed up. Connect the 'Reset' pin to GND when you boot the device up to force a factory reset in HW (via the bootloader).