Skip to content

Pins used by the Bela cape

giuliomoro edited this page Jul 16, 2018 · 23 revisions

The BeagleBone provides two expander headers: P8 and P9.

The Bela cape uses pin 24 on header P8 and pins 10-15-17-18-19-20-21-22-23-24-25-26-28-29-30-31 on header P9, plus power and ground. Additionally, a number of pins are used for the digital I/O: pins 7-8-9-10-11-12-15-16-18-27-28-29-30 on header P8 and pins 12-14-16 on P9. These can be disabled in software if they are needed for other uses.

The Bela multiplexer capelet additionally uses pins 41-42-43-44-45-46 on P8. The Bela audio expander capelet does not use any additional pins from P8 or P9.

The pin diagram for the I/O and power is available on the on-board IDE and online here.

An up-to-date list of the pins an pinmuxer settings can be found in the Bela device trees and overlays.

Below is a summary of the pins used on Bela:

Bela cape

Audio codec

Uses both McASP channel 0 and I2C bus 2

McASP0

"P9.25", 0x1ac 0x00  /* mcasp0_ahclkx, MODE0 | OUTPUT_PULLDOWN */
"P9.28", 0x19c 0x22  /* mcasp0_axr2, MODE2 | INPUT_PULLDOWN */
"P9.29", 0x194 0x20  /* mcasp0_fsx, MODE0 | OUTPUT_PULLDOWN  */
"P9.30", 0x198 0x20 /* mcasp0_axr0, MODE0 | OUTPUT_PULLDOWN */
"P9.31", 0x190 0x20 /* mcasp0_aclkx, MODE0 | OUTPUT_PULLDOWN */

I2C2

"P9.19", 0x17c 0x73 /* i2c2_scl | P9_20 | MODE3 | INPUT_PULLUP | SLEWCTRL_SLOW
"P9.20", 0x178 0x73 /* i2c2_sda | P9_19 | MODE3 | INPUT_PULLUP | SLEWCTRL_SLOW

Analog I/O

McSPI0

"P9.15", 0x040 0x27 /* MODE7 | INPUT | GPIO used for CS of the ADC (Bela only) */
"P9.17", 0x015c 0x27 /* MODE7 | INPUT | GPIO used for CS of the DAC (ADC on Bela Mini) */
"P9.18", 0x158 0x10 /* spi0_d1, MODE0 | OUTPUT_PULLUP */
"P9.21", 0x154 0x30 /* spi0_d0, MODE0 | INPUT_PULLUP */
"P9.22", 0x150 0x30 /* spi0_sclk, MODE0 | INPUT_PULLUP */

Bela button

"P9.27" (Bela) or P2.34 (BelaMini), 0x1a4 0x37  /* gpio3[19] | MODE7 | INPUT | pullup*/ 

Bela digital I/O

On the BeagleBone (Bela):

"P8.07", 0x90 0x27 /* MODE7 | INPUT | GPIO */
"P8.08", 0x94 0x27 /* MODE7 | INPUT | GPIO */
"P8.09", 0x9c 0x27 /* MODE7 | INPUT | GPIO */
"P8.10", 0x98 0x27 /* MODE7 | INPUT | GPIO */
"P8.11", 0x34 0x27 /* MODE7 | INPUT | GPIO */
"P8.12", 0x30 0x27 /* MODE7 | INPUT | GPIO */
"P9.12", 0x78 0x27 /* MODE7 | INPUT | GPIO */
"P9.14", 0x48 0x27 /* MODE7 | INPUT | GPIO */
"P8.15", 0x3c 0x27 /* MODE7 | INPUT | GPIO */
"P8.16", 0x38 0x27 /* MODE7 | INPUT | GPIO */
"P9.16", 0x4c 0x27 /* MODE7 | INPUT | GPIO */
"P8.18", 0x8c 0x27 /* MODE7 | INPUT | GPIO */
"P8.27", 0xe0 0x27 /* MODE7 | INPUT | GPIO */
"P8.28", 0xe8 0x27 /* MODE7 | INPUT | GPIO */
"P8.29", 0xe4 0x27 /* MODE7 | INPUT | GPIO */
"P8.30", 0xec 0x27 /* MODE7 | INPUT | GPIO */

On the PocketBeagle (BelaMini):

"P2.01", 0x48 0x27 /* MODE7 | INPUT | GPIO1[18] */
"P2.02", 0x6c 0x27 /* MODE7 | INPUT | GPIO1[27] */
"P2.04", 0x68 0x27 /* MODE7 | INPUT | GPIO1[26] */
"P2.06", 0x64 0x27 /* MODE7 | INPUT | GPIO1[25] */
"P2.08", 0x78 0x27 /* MODE7 | INPUT | GPIO1[28] */
"P2.10", 0x50 0x27 /* MODE7 | INPUT | GPIO1[20] */
"P2.18", 0x3c 0x27 /* MODE7 | INPUT | GPIO1[15] */
"P2.20", 0x88 0x27 /* MODE7 | INPUT | GPIO2[0] */
"P2.22", 0x38 0x27 /* MODE7 | INPUT | GPIO1[14] */
"P2.24", 0x30 0x27 /* MODE7 | INPUT | GPIO1[12] */
"P2.25", 0x16c 0x27 /* MODE7 | INPUT | GPIO1[9] */
"P2.27", 0x168 0x27 /* MODE7 | INPUT | GPIO1[8] */
"P2.35", 0xe0 0x27 /* MODE7 | INPUT | GPIO2[22] */
"P1.35", 0xe8 0x27 /* MODE7 | INPUT | GPIO2[24] */
"P1.32", 0x170 0x27 /* MODE7 | INPUT | GPIO1[10] */
"P1.30", 0x174 0x27 /* MODE7 | INPUT | GPIO1[11] */

BelaMini LEDs

"P1.02", 0xe4 0x27 /* MODE7 | INPUT | GPIO2[23], blue LED*/
"P1.04", 0xec 0x27 /* MODE7 | INPUT | GPIO2[25], red LED */

I2C1 header (broken out to the molex connector on the Bela cape but unused)

"P9.26", 0x180 0x73 /* i2c1_sda, MODE3 | INPUT_PULLUP | SLEWCTRL_SLOW */
"P9.24", 0x184 0x73 /* i2c1_scl, MODE3 | INPUT_PULLUP | SLEWCTRL_SLOW */

Bela multiplexer capelet

"P8.41", 0x0b0 0x25  /* lcd_data4.pr1_pru1_pru_r30_4, MODE5 | OUTPUT | PRU */
"P8.42", 0x0b4 0x25  /* lcd_data5.pr1_pru1_pru_r30_5, MODE5 | OUTPUT | PRU */
"P8.43", 0x0a8 0x25  /* lcd_data2.pr1_pru1_pru_r30_2, MODE5 | OUTPUT | PRU */
"P8.44", 0x0ac 0x25  /* lcd_data3.pr1_pru1_pru_r30_3, MODE5 | OUTPUT | PRU */
"P8.45", 0x0a0 0x25  /* lcd_data0.pr1_pru1_pru_r30_0, MODE5 | OUTPUT | PRU */
"P8.46", 0x0a4 0x25  /* lcd_data1.pr1_pru1_pru_r30_1, MODE5 | OUTPUT | PRU */
Clone this wiki locally