Even before the announcement and introduction of the Raspberry Pi 3, word of a few very powerful single board ARM Linux computers was flowing out of China. The hardware was there – powerful 64-bit ARM chips were available, all that was needed was a few engineers to put these chips on a board, a few marketing people, and a contract manufacturer.
One of the first of these 64-bit boards is the Pine64. Introduced to the world through a Kickstarter that netted $1.7 Million USD from 36,000 backers, the Pine64 is already extremely popular. The boards are beginning to land on the doorsteps and mailboxes of backers, and the initial impressions are showing up in the official forums and Kickstarter campaign comments.
I pledged $15 USD to the Pine64 Kickstarter, and received a board with 512MB of RAM, 4K HDMI, 10/100 Ethernet and a 1.2 GHz ARM Cortex A53 CPU in return. This post is not a review, as I can’t fully document the Pine64 experience. My initial impression? This is bad. This is pretty bad.
This un-review covers the least expensive Pine64, featuring a 1.2 GHz Allwinner A64, 512MB of RAM, Ethernet, HDMI, and two USB ports. This is the reward for pledging $15 to the Pine64 Kickstarter campaign. According to the Kickstarter campaign, this board should have shipped in February. It arrived on April 13th. That’s surprisingly fast for a Kickstarter campaign, and not at all a knock at the Pine team.
Right now, the Pine64 is available for preorder in three configurations. The lowest tier, the one being reviewed here, is $15 USD with worldwide shipping. The Pine64+ includes 1GB of RAM, Gigabit Ethernet, and connectors for a camera, LCD, and a touch panel. This version costs $19 USD, plus $7 shipping to the US, $12 for the rest of the world. The top-tier Pine64+ 2GB includes 2GB of RAM, priced at $29, plus $7 shipping to the US, $12 for the rest of the world.
Although this is a little esoteric for a hardware un-review, I would like to mention the mechanical layout of the Pine64. It’s huge. It’s just a hair larger than 3″ x 5″, more exactly 127mm x 79mm. This is significantly larger than the current crop of Raspberry Pis and the Odroid C2.
There’s a lot of space on the Pine64, and the headers, ports, and plugs take full advantage of this fact. Power, Ethernet, and HDMI are all on one side of the board, USB and the 3.5mm mic and headphone jack are opposite, the SD card is along the side. There’s a DSI header to connect a touch sensitive LCD, but the connector for the touch panel is on the other side of the board.
Concerning the specific Pine shipped to me, I would have to rate the assembly as somewhat lackluster. The board itself is bent in the middle, with a visible gap between the board and spacer of the pin headers. It’s difficult to photograph, but you can see it plain as day. If I were grading Pine’s QA, this would be a solid D – the board works, but I’m surprised that it does.
The hardware is pretty much what you would expect from a 64-bit ARM board. The quad-core ARM A53 Allwinner CPU is effectively the same CPU that is found in the Raspberry Pi 3. The GPU, however, is entirely different. The SoC unfortunately features a Mali 400-MP2 graphics processor, a GPU that isn’t well supported and lags behind the efforts to open source the Broadcom VideoCore IV found in the Raspberry Pi. To be fair, GPU support on single board Linux computers is almost always terrible; the Mali 400 is just slightly more terrible than any other option.
As far as software is concerned. there are a number of distributions available on the Pine64 wiki, including Ubuntu, Arch, and Android images.
If you buy a printer, you’re not getting a CD full of software. If you buy a laptop, all the recovery software will only be available either through a download or on a recovery partition. No one ships software anymore and Pine64 is no exception. You get your SD card images directly from the Pine64 wiki, with Ubuntu, Arch, and Android Lollipop distros available. There’s one problem here – Pine64 isn’t using their own hosting, and have instead relied on Google Drive and Torrents to distribute their software images to everyone. The Ubuntu image is 7 Gigabytes, and as I’m writing this paragraph, it’s downloading at about two megabits per second. You can do the math for that. At least they offer a few torrents for SD card images. I suspect those torrents will be faster once Pine64s ship out to backers and the number of seeders increases.
With the image in hand, you would expect writing an image to a microSD card to be exactly the same as a Raspberry Pi or any other single board computer – use Win32DiskImager or dd and write the image to a card. This is not true for all distributions. According to the Pine wiki and forums, the recommended software to burn an image to an SD card is PhoenixCard, a piece of software developed by Allwinner that writes disk images to SD cards. It may start up with a Chinese UI, and according to community member [Michael Larson] fails one in every fifteen times at writing an image to an SD card.
With a somewhat reliable way to write a software image to the SD card, you would think booting the Pine64 would be easy. Not so. At the time of this writing (and with multiple attempts), several of the distribution images simply don’t work. The Android distro did not boot on my machine, the Arch distribution did not work. The Ubuntu image worked, but this was an effort by community member [Michael Larson]:
The Ubuntu experience was tremendously slow on the Pine64 and I suffered several reboots. As of this writing, I have tested all of the software distributions on the Pine64 wiki. Only the Ubuntu distribution works poorly, and right now I consider the Pine64 to be a waste of $15. This will hopefully change in the near future, and I will gladly write a new review when I can boot the Pine.
Peripherals and Expansion
One of the biggest draws of a Linux single board computer is a plethora of pins and GPIOs and peripherals. The Pine64 has plenty of pins, including a 40-pin header based on the Raspberry Pi’s expansion port. This is awesome – there are hundreds of ‘hats’ available for the Pi, and although many of them are built around the Pi’s particular SoC, having the artificial Pi standard available on the Pine is great.
There are other ports and headers, including a 34-pin Euler Bus. What’s a Euler Bus? This is the most information you will find on the Euler Bus, linking to (again) Google docs. There’s an IR receiver in there, headphone out, UARTs, SPIs, and even I2C. Not bad.
I have one of the first thousand Pine64s in the world. Every ARM/Linux single board computer is built on the efforts of the community around the board, and the Pine64 is no exception. The efforts of Linux hackers like [Michael Larson] have turned the Pine64 from something that rolled out of a reflow oven into a somewhat useful board.
However, Pine, or the people behind Pine, have not held up their end of the bargain. It’s relatively easy to pick up a few thousand ARM chips, hire an EE for a month or two to produce a single board computer, and find a contract manufacturer in China. The hard part is getting the software working, getting the documentation together, and fostering a community that isn’t stumbling in the dark trying to get this board to work. This is where the Pine64 fails. The forums are a mess right now, and the comments on the Kickstarter campaign aren’t much better.
The software support and documentation is so sparse, I literally can not get into a Linux terminal. With a day sunk into setting up the Pine, I only have a picture of a Pirates of the Caribbean desktop that came on a distribution produced by someone completely unrelated to the Pine team. This isn’t just me, either; a few of the Hackaday Overlord devs gave the Pine a shot, too. The results were inconclusive.
This is not a review of the Pine64, because a proper review would look at the hardware and software, do a few benchmarks, blink a few LEDs, and maybe try to get a Dreamcast emulator working. I am unable to do this. In turn, this turned into a review of the people behind the Pine. The Raspberry Pi Foundation has shown that you can rely on the community and user forums for a great deal of support, but you need to bring a bit more to the table than a board whipped up by a contract manufacturer. I do not have a working OS on the Pine64, and the Pine team has not managed to meet my minimum expectations.