Esta placa traduce bidireccionalmente las entradas/salidas de la GPIO de la Raspberry Pi, que trabaja a 3,3 V, a los niveles TTL, ampliamente utilizados, de 5V.
La segunda revisión de Raspberry Pi (identificable porque hay dos agujeros de sujeción y una ampliación del GPIO de 8 patas sin terminales) permite una ampliación del GPIO soldando unos terminales P5. Las ventajas de tener este conector soldado son: 1) Tener acceso a un segundo canal I2C (siempre y cuando no tengamos previsto utilizar la cámara que se conecta a S5) y 2) tener acceso directo a las señales RTS y CTS de la UART.
P2 es el puerto de comunicación serie UART. Se puede configurar este puerto para que Raspberry Pi actúe como maestro o como esclavo. Esta configuración se realiza mediante jumpers. Para una comunicación directa sin control de flujo se puede configurar como maestro poniendo los jumpers a RX_A y TX_A y si se quiere configurar como esclavo a RX_B y TX_B. Si es necesario un control de flujo por hardware, la configuración como maestro se hace poniendo los jumpers a CTS_A y RTS_A y para funcionar como esclavo a CTS_B y RTS_B. Para poder trabajar con CTS y RTS directamente hay que tener soldado el conector P5 en la Raspberry Pi. En caso de no tener soldados los terminales de P5 (o tener la primera revisión de Raspberry Pi) se pueden forzar los niveles de las patas correspondientes a I2C0_SCL y I2C0_SDA mediante jumpers.
P3 puede actuar como un port de entradas/salidas, como una conexión de I2C0 (con P5 soldado y sin usar S5 de la cámara) o como SPI3 que mediante la selección de CS0 o CS1 puede controlar dos chips SPI esclavos (por ejemplo una pantalla tàctil resistiva donde un chip SPI controla la pantalla y el otro la parte táctil).
P4 puede actuar como un port de entradas/salidas o una part de él como controlador de un bus TWI (I2C_0 en la primera versión de la Raspberry Pi i I2C_1 en la segona versión) y otra parte puede controlar un chip SPI usando SPI4. Vídeo de presentación de la 3Bpi: Código de muestra utilizado en el vídeo : p4v2_01.c
Configuración del puerto serie en la Raspberry Pi : : setRs232up.html
Este diseño se basa en la idea de el articulo de Jim Hagerman de Nokia Mobile Phones de San Diego, Califòrnia, con el título "Two Transistor Form Bidirectional Level Translator".