The Raspberry Pi Pico‘s “Pi Silicon” RP2040 SoC was the plentiful source of microcontroller brains during a long period of supply chain woes. It was natural for official partners (Adafruit, SparkFun, Arduino and Pimoroni) to release their own spins on the $4 microcontroller, and others including Banana Pi followed suit. For its latest model, the Banana Pi BPI-Pico-RP2040 we see the same 40 pin form factor but there are a few differences between the official Pico and Banana Pi’s
|Row 0 – Cell 0||Banana Pi BPI-Pico RP2040||Raspberry Pi Pico|
|SoC||RP2040 Arm Cortex M0+ Dual Core at 133 MHz||RP2040 Arm Cortex M0+ Dual Core at 133 MHz|
|RAM||264KB SRAM||264KB SRAM|
|Storage||2MB Flash||2MB Flash|
|GPIO||40 Pin GPIO||40 Pin GPIO|
|Row 5 – Cell 0||26 Multi-function pins||26 Multi-function pins|
|Row 6 – Cell 0||26 x Digital I/O||23 x Digital I/O|
|Row 7 – Cell 0||4 x Analog Inputs||3 x Analog Inputs|
|Row 8 – Cell 0||2 x I2C||2 x I2C|
|Row 9 – Cell 0||2 x SPI||2 x SPI|
|Row 10 – Cell 0||2 x UART||2 x UART|
|Row 11 – Cell 0||Row 11 – Cell 1||1 x Arm Serial Wire Debug (SWD)|
|Power / Data||USB-C||Micro USB|
|Dimensios||55.8 x 21mm||51 x 21mm|
Let’s start with the price. Coming in at a MSRP of $6.58 (currently discounted to $5.26) the board is $2 more than an official Raspberry Pi Pico. For the additional dollars we get an onboard WS2812B “NeoPixel” RGB LED connected to GPIO3 (PDF) and a 4 pin JST-PH socket. This socket is more commonly referred to as Stemma QT, Qwiic or QW/ST and in reality it breaks out the I2C interface (I2C0 on pins GP8 and 9 to be specific) for use with compatible devices.
Image 1 of 2
The keen-eyed amongst you will notice that the dimensions of the Banana Pi board are 4.8mm longer than the Raspberry Pi Pico. This could be to due to the choice of USB-C over micro USB. The USB-C socket is slightly larger and requires a little more circuitry than micro USB. Bear in mind that the length change also fouls the placement of the M2 mounting holes which are now wider on the USB-C end (17.6 mm versus 11.4 mm) and this could break compatibility with your board designs. The longer length is a consideration for those wishing to replace a Pico with this board. The longer length may just squeeze in place, but watch out for the mounting hole placement. GPIO pin spacing remains the same as the Pico (2.54mm between each pin) so accessories and add-ons should work out of the box. Also note the castellations that enable the board to be surface mount soldered to a PCB.
Programming the Banana Pi BPI-Pico-RP2040 is a straightforward process. Officially we have the choice of MicroPython and Arduino. Being an RP2040 based board there are other alternatives, such as TinyGo, Rust and CircuitPython. Right now there are no official versions crafted for the Banana Pi BPI-Pico-RP2040 but an eager community will soon port them.
If you need a similar form factor but with Wi-Fi then the Banana Pi BPI-PicoW-S3 is not to be overlooked. Powered by an ESP32-S3 SoC with a dual core 240 MHz CPU and 320KB of SRAM this pin compatible alternative offers the wealth of the ESP32 community along with a Pico form factor. The PicoW-S3 can be programmed in MicroPython, Arduino and CircuitPython.
More information on the Banana Pi BPI-Pico-RP2040 can be found via the official wiki. There are schematics and mechanical drawings for those of us eager to add the board to their next project. The board is on sale via Aliexpress.