The Banana Pi P2 Zero is a single board computer that has a quad-core processor as well as a 8GB eMMC and 512MB of RAM. It’s equivalent in power to roughly a Raspberry Pi Zero 2 or a Orange Pi Zero 2.
Today I’ll review the Banana Pi P2 Zero and examine the images available for the board, the build quality and included components as well as benchmark the I/O performance of the board. We’ll then compare it to the Orange Pi Zero 2 (one of my favorite SBC choices in this current market) and see what the advantages and disadvantages the Banana Pi setup has.
Let’s get started!
The Geekworm copper heatsink set is designed to fit many different single board computers. It uses thermal conductive adhesive which many “cheap” heatsink kits for SBCs don’t have. Eliminates hotspots and reduces throttling. Can be further enhanced by powered cooling over the heatsinks.
Specifications / Accessories
- CPU: Allwinner H3
- Quad-core Cortex-A7.
- Mali 400MP2 GPU
- 512MB DDR3 SDRAM
- WiFi (AP6212) & Bluetooth
- Mini HDMI
- 40 PIN GPIO
- includes UART, SPI, I2C, IO etc.
- 100M LAN
- IEEE 802.3af PoE standard PoE module support
- 8G eMMC flash included
My Banana Pi P2 Zero also came with a small USB to TTL serial adapter. It had been bent a little from shipping but I was really surprised they included one of these.
One interesting thing I’d like to point out from the specifications is that the board supports PoE. This usually requires some sort of hat or adapter on many/most other boards.
One thing they did *not* include (just like the Banana Pi M2 Zero) was the external WiFi antenna. You will absolutely need to use the external WiFi antenna connector to get a good WiFi signal with these boards. When I don’t use an antenna they can see my WiFi access points but can never successfully connect or authenticate. Once I connect the antenna the WiFi functions perfectly.
The board revision I received was V1.1. The build quality of the board is honestly great. All of the edges of the board are clean.
Traces are easily visible on the board and the components are all very securely attached. The GPIO pin header is already soldered which is a plus in my book.
Here’s a look at the top view of the board:
Most of the components and connectors for this board are here on the top. You actually have a push-button power included which is nice. There is 5V DC input for USB-OTG as well as a standard OTG USB connector.
Note that unfortunately this is a Mini HDMI port and not a full size (or a micro). That is the same connector the Raspberry Pi Zero uses and generally needs an adapter or a cable that goes straight from micro HDMI to HDMI (not likely to be something you’ll have laying around unless you’ve purchased it to work with other single board computers before such as the Pi Zero).
Now let’s take a look at the bottom view:
We can see the micro SD card slot is here on the bottom of the board. If you look at the far right edge of the board you will also see the external WiFi antenna connector (not included unfortunately).
It would have been nice if they could have managed to get the external WiFi connector on the top of the board but they did at least put it literally right on the edge which will make things easier if you have the antenna connected on the bottom and are bringing the wire up to the top side of the board.
The first major thing to note is that the P2 Zero and M2 Zero images are compatible. This actually helps a lot as one of my main concerns reviewing this board early is that there would only be a couple of images available for it.
The bad news is that I actually hammered the Banana Pi M2 in my review for having Raspbian/Debian Stretch (yes, Stretch) available as the latest version of Raspberry Pi OS.
If you need Raspberry Pi OS you’re going to be unhappy with such an old version. The Armbian image is much more up to date using a 5.19.x kernel at time of writing.
Installing Linux to eMMC (Failed)
This was harder than I thought it would be. You can’t just plug in the USB-OTG port into your computer and image the board like I was expecting.
Instead the best way is to install Armbian on a SD card. Once you boot into that installation you can use:
Then you choose “Install” and install both to eMMC. Once I did this it was able to boot and use the eMMC as the root partition but I couldn’t remove my SD card. If I removed my SD card it would not boot. Unfortunately this also broke my Ethernet connection and it would just stay solid when booting from eMMC.
When you go to the Banana Pi forums searching for this issue you will see interactions like this. I also saw one like this. Those are interesting because that is a very high level Armbian developer responding in both cases but as they pointed out the board isn’t officially supported. It’s also definitely not working like they are saying though with the P2 and it is definitely not the fault of the people who posted the issues.
It doesn’t seem like Banana Pi is making enough contributions to Armbian (or any if I were to guess by the responses to problems with the board) to get reliable support on the board. Money comes up in every single one of those threads related to the Banana Pi P2 Zero and the Armbian team makes it quite clear they aren’t getting it. You should keep this in mind as a consumer. They know about these issues and they aren’t going to fix them for an unsupported board for free.
Benchmarking I/O Performance
This will just be a SD card benchmark as the eMMC is essentially broken for booting purposes (at least with Armbian).
You can verify the performance of your drive on Pi Benchmarks using the following command:
sudo curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash
Here are the results for the SD:
Category Test Result HDParm Disk Read 22.19 MB/s HDParm Cached Disk Read 21.27 MB/s DD Disk Write 18.9 MB/s FIO 4k random read 1852 IOPS (7408 KB/s) FIO 4k random write 731 IOPS (2924 KB/s) IOZone 4k read 8018 KB/s IOZone 4k write 2438 KB/s IOZone 4k random read 6705 KB/s IOZone 4k random write 3252 KB/s Score: 1,038
It’s definitely a fine score for a SD card. I don’t really have too much to say about this other than I wonder how the eMMC would do.
I’m sure I could figure out how to make these use the eMMC as the root partition even if I had to go as far as using a SD card as the boot loader (stupid). I do guides like this all the time on the site and many of you have probably read them before.
This is a review though. It cannot do it out of the box or with the included images correctly. If you are buying this expecting to be able to simply install the Armbian image on the eMMC without going through an absolute nightmare then no it will not do it at time of writing.
I fought with it for several hours trying to get it to simply boot my Armbian from eMMC and could not and I am someone who literally writes guides teaching people how to get devices that don’t support USB/MSD booting to do it even if we have to use a SD card to bootstrap the process. I’m sure it can be fixed but if I dive into fixing this again it will be worthy of an entire article on how to set it up properly.
Pros / Cons
- Very well built board
- Includes 8GB built-in eMMC
- Does not include external WiFi antenna (and WiFi is essentially unusable without it)
- Raspberry Pi OS version is Stretch (but an up to date Armbian is available)
- No official Armbian support and recommended image seems to have problems
The Banana Pi P2 Zero and the Orange Pi Zero 2 are really, really similar performance wise. They’re also really similar price-wise. At time of writing it was significantly cheaper to get the board on AliExpress (the Orange Pi Zero 2 is a lot cheaper on Amazon). Of course they all make sense to pick over any Raspberry Pi right now as you are looking at a fraction of the price of what Pis are going for!
The deal breaker for me with the Banana Pi P2 was the images / support. I experienced some screen tearing testing the Armbian desktop OS distro with the P2 Zero making this review. Banana Pi says the images should be fully compatible but I had Ethernet problems as well as boot problems when trying to install Linux to the eMMC. This just isn’t a very smooth experience compared to Orange Pi.
I had the same thoughts about the Banana Pi M2 Zero. You know how people say that Pi alternatives have really poor image support? The Banana Pi boards are the epitome of that. Even the Armbian image is in a very poor state on this board. The eMMC seems to be recognized as /dev/mmcblk2 instead of /dev/mmcblk1 and unfortunately Armbian very much works on hard-coded device names instead of UUIDs. If it’s own scripts fail and set things to the wrong IDs you will be left with a system that can’t boot.
I’m going to give it a 5 / 10. The very basics such as getting Linux on the eMMC is an absolute nightmare. It makes me sad that it’s well-built hardware with really poor / outdated / nonfunctional images. PoE did not work for me. No idea why. I used the exact same Ethernet cable/port as I used for my CM4 PoE I/O board testing with the BIGTREETECH CB1 not too long ago.
I really wanted to like the Banana Pi boards but I had an even worse experience with the P2 Zero than I did with the M2 Zero. The M2 Zero Armbian image worked perfectly. I don’t think I’ll be trying any more Banana Pi boards for a while and will be focusing my attention elsewhere like Orange Pi / Libre Computers and all of the awesome open source RISC-V boards coming out. I definitely recommend the Orange Pi or Libre Computers boards instead!
See my Orange Pi Zero 2 review here for a very comparable board
I’ve also reviewed the Banana Pi M2 Zero here which is the same size as a Pi Zero