Posts Tagged ‘rock64’

ROCK64 Board Review – Part 1: eMMC Flash Module, Android 7.1 Firmware, Benchmarks, and Kodi

July 16th, 2017 17 comments

ROCK64 is the second ARM Linux development board by Pine64 that is based on Rockchip RK3328 processor, instead of Allwinner 64 for Pine A64 board, and while both processors comes with four Cortex A53 cores, the Rockchip processor offers a faster GPU, 4K @ 60 Hz video support, as well as USB 3.0 support. I’ve got a sample with an eMMC flash module, and I’m going to test it first with Android 7.1, since those were the only firmware images currently available on the Wiki, but Linux will be available before the board ships publicly at the end of July.

Click to Enlarge

Rock64 Linux Ports Status

There are now at least three Linux ports in progress:

  1. ayufan’s Debian Jessie and Ubuntu Xenial images which are now in pre-release, but should officially be released next week.
  2. Arch Linux ARM with no pre-built Rock64 images yet
  3. Fedora 25 minimal Image
  4. The Yocto Project support is also being worked on with the first release planed for August

I’ve got some comments on IRC, that ayufan images supports GPIO(s), Mali hardware graphics acceleration – but performance needs to be tuned -, as well as hardware video decoding but 4K videos are not playing that well right now. I’ll make sure to try one of ayufan image, before the boards ship on July 31st.

eMMC Flash Module Compatibility with ODROID Boards

ROCK64 board can boot from micro SD card or an eMMC flash module, with the latter likely to provide better performance than most SD cards, and you won’t have to worry about fakes. The eMMC flash module is not a new idea, as Hardkernel has offered those with their ODROID boards for year. And I read that Pine64 eMMC flash module would be compatible with ODROID boards, which would be good news if you already own any of Hardkernel ones. I tested compatibility the easy way, as I connected Pine64’s eMMC flash to Hardkernel eMMC to micro SD adapter…

and plugged it in to a card reader in my computer, and I could access “system” and “Volumn” partitions on the eMMC flash module part of the pre-installed Android image.So ODROID users can rejoice, as you may not need to buy extra eMMC flash modules to play around with ROCK64 board.

Installing Android 7.1 on ROCK64 Board

ROCK64 board firmware update to the eMMC flash module works just like firmware update on Rockchip TV boxes, i.e using Android_Tool program in Windows, or upgrade_tool (now renamed rkdeveloptool) in Linux. You’ll also need a USB male to male connected between your computer and the board. If you plan to run Android from a micro SD card instead, you can use the same image, but flashing it via SD_Firmware_Tool from Windows.  Eventually Pine64 installer program, based on Etcher, will probably be updated to support ROCK64 board, and handle both download and flashing to the micro SD card.

Currently there are two Android images provided via the Wiki:

  • Stock Android 7.1 [20170712] Engineering version released by the company
  • Community Build Android TV 7.1 [ver 0.1.8] by ayufan

I’ll use “Stock Android 7.1” for this review, since I’m not a big fan of Android TV, and both download are slow, with the Pine64 server easily winning the download race against github. 🙂

Since I’m a Ubuntu user, I went with the Linux method. Let’s install the update_tool, and uncompress the firmware image first. After download run:

After connecting a jumper – or something else to short both pins – as shown in the picture above with a red circle, I connected the power supply, and a USB cable between the top USB 2.0 port and my computer in order to enter MaskROM mode, and finally removed the jumper before running:

This should take a couple of minutes with the following output:

Firmware update is done.

Android 7.1 “Engineering Version”  Launcher, Settings and Benchmarks

So we can connect the board with everything we need.

The first time. I’m asked to choose between “ROCK64 Launcher” and “ROCK64 Launcher”, and you’ve got to love the choice offer here.
I just selected the first one (com.cloudmedia.rock64launcher) and it did not work quite as expected…

I tried to open the app again, but it did not work, so I just restarted the board, and could finally access the launcher [Update: The second launcher works better apparently]. Note that the framebuffer resolution is only 1280×720 instead of the more common 1920×1080 on this type of hardware.

Click for Original Size

One small problem though… While the USB keyboard would work, my air mouse’s RF dongle connected to the top USB dongle would not be recognized. I had to move it to the lower part to make it work. Nothing would work on that upper USB port, so I guess it’s stuck in device mode, and could not find an option in Android to change that. So I connect a USB Hub with the USB keyboard and RF dongle, and it would not work either. After unplugging and replugging the hub, I was finally able to use at the same time.

Click to Enlarge

The settings will show on the right side of the screen, I just composed the screenshot above to show both resolution options up to 4096x2160p60(YCrCr420), and maybe 4096x2160p60(YCrCb444), which may have seen filtered out since LG 42UB820T television used for review is not supporting that mode.

The storage section shows 3.08GB used out of 14.45GB from the 16GB eMMC flash module, and the system could mount both NTFS and EXT4 partitions from the USB 3.0 hard drive, but not exFAT nor BTRFS.That image is based on Android 7.1.2 plus Linux 3.10.104, and a fairly recent April 5,2017 security patch.

Above is the list of pre-installed app in that image. I went to Google Play Store to install a few apps, and many were grayed out and impossible to install. I still managed to install Antutu and DRM Info. I ran the former, keeping in mind that without heatsink, the score may not be that good. 34,811 points in Antutu 6.x without heatsink is not bad, especially considering the room temperature was close to 30 ºC. I actually got a lower score with Rockchip RK3328 TV boxes like A95X R2 with only 33,117 points, also using the same 1280×720 resolution. DRM Info returns no support for Widevine DRM at all, not really surprising.

In order to install more apps, I decided to download APKPure apk via the installed Lightning web browser, and somehow the board became rather unresponsive, as is there was lot of I/Os in the background. After killing the browser twice when getting the “app not responding” window, I finally manage to download and install APKPure.

Damn, it will launch in portrait, a frequent bug on TV boxes running Android…. 4 or 5 years ago. So I decided that maybe I should give ayufan Android image a try after all, since the “Engineering Version” image has soon many bugs right now. As I finished testing I was also informed that “the stock build listed as engineering, we still tuning on 4K playback”, and that “eventually this tuning will roll into ayufan TV build around end of this month when ROCK64 production board roll out”. So eventually people will be directed to use Android TV 7.1 OS, and you should still keep in mind that there’s still 2 weeks before the board ships so many bugs will be ironed out.

Android TV 7.1 “ayufan” Firmware

As I tested the “Engineering” image, Android TV 7.1 firmware could complete to download (it tool around 6 hours), and I uncompress it, and flashed it using the same method as above:

I had no troubles to access to the launcher this time, and both USB 2.0 ports are working.

Click to Enlarge

The resolution is still 1920×1080, so that’s also an improvement.

Android TV firmware does not play nice with my air mouse however, as in many sections, mouse clicks are not supported, and the Home key has no effect. Doing searches in Google Play is a nightmare, as it will randomly switch to “voice mode” when I type with a keyboard or air mouse.

I could not find Chrome, nor Firefox in Google Play, so instead I installed some other “TV Browser”, and the download would not start, so instead I download APKPure in my computer, and installed it from ES File Explorer. The same portrait orientation occurred again, so I gave up, and side-loaded CPU-Z, A1SD Bench, and iperf from ES File Explorer.

CPU-Z shows a quad core Cortex A53 processor clocked at up to 1.51 GHz with a Mali-450MP GPU…

… and that I got the 1GB RAM version of the board (there are also 2GB and 4GB version), and the “screen resolution” is 1920×1080 as we’ve seen above.

This image is also based on Android 7.1.2 with Linux 3.10.104 kernel.

I used A1SD bench for storage benchmarks in Android which reports sequential speeds only.

Click to Enlarge

The “Cache read” is the internal memory so the 90.80 MB/s read speed is invalid. The 35.39MB/s write speed should be correct, and is not too bad with a flash. We’ll find more about the eMMC flash module once I run iozone3 benchmark in Linux. USB storage is working OK, with the EXT-4 partition (Red SD card) achieving 94.13 and 90.93 MB/s W/W speeds, and the NTFS partition (Yellow SD card) getting 92.82 MB/s and 62.66 MB/s not that from what I get on my computer with that mechanical hard drive. Other people have tested performance up to 300 MB/s on SSD drive connected to the USB 3.0 port of ROCK64 board. The important part is that performance maxes out Gigabit Ethernet bandwidth, which with EXT-4 file system it nearly does.

Speaking about Ethernet, I tested Gigabit performance by using iperf for 60 seconds for a full duplex transfer:

Not too bad, but it looks like it can not (currently) transfer close to max speed in both direction at the same time. If you are using it as TV box, it will not matter a bit however.

I also tested a few 4K videos from the USB 3.0 drive in Kodi 17.3 installed from Google Play since I was told it should work OK…:

  • HD.Club-4K-Chimei-inn-60mbps.mp4 (H.264, 30 fps) – Audio OK, but video is a slidehow despite hardware video decoding with amc-h264 codec
  • sintel-2010-4k.mkv (H.264, 24 fps, 4096×1744) – Shows previous video still with many green lines. I had very difficult controls from the air mouse, so I powered cycled the board.
  • BT.2020.20140602.ts (Rec.2020 compliant video; 36 Mbps; 59.97 Hz) – Audio OK, but video is a slideshow despite using hardware decoding with amc-h265
  • Fifa_WorldCup2014_Uruguay-Colombia_4K-x265.mp4 (4K, H.265, 60 fps) – Audio OK, but video is a slideshow with the picture refresh every ~6 seconds
  • Samsung_UHD_Dubai_10-bit_HEVC_51.4Mbps.ts (10-bit HEVC / MPEG-4 AAC) – Several audio cuts, and slideshow
  • 暗流涌动-4K.mp4 (10-bit H.264; 120 Mbps) – Video will freeze after a few seconds
  • tara-no9-vp9.webm (4K VP9 YouTube video @ 60 fps, Vorbis audio) – Maybe 1 fps with amc-VP9 (HW)

All videos above are using hardware video decoding according to Kodi overlay info. I tried Big Buck Bunny 1080p60 sample, but the video was not watchable either. It would play, but not smoothly. CPU temperature should not be the problem, as I measured around 65 °C with a IR thermometer. I skipped HDMI audio pass-through, since I was told it would not work, and I can’t play videos properly in Kodi with the current firmware. Better video playback and HDMI audio pass-through are all being worked on right now.

So Android support does not look too good right now, and while I’m hopeful the most critical issues will be fixed by the time, people get the board next months, there are so many problems that, it’s likely many other bugs will still have to be fixed, so you may have to be patient if you have ordered  a board in order to run Android.

ROCK64 can be pre-ordered for $24.95 with 1GB RAM, $34.95 with 2GB RAM, and $44.95 with 4GB RAM on Pine64 website. You may want to add a power supply, and optionally the eMMC flash module to your order. Remember that you’ll also need a USB male to male if you want to flash the firmware to the eMMC flash. It’s not needed if you run Android from a micro SD card. You can find some tips to order a proper micro SD card in the article entitled  “Micro SD Cards for Development Boards – Classes, Tools, Benchmarks, Reliability, and Tips & Tricks“.

ROCK64 is a Rockchip RK3328 Development Board with Up to 4GB RAM, 4K HDR, Gigabit Ethernet, and USB 3.0

June 8th, 2017 80 comments

Rockchip RK3328 Android TV boxes such as A5X Plus or A95X R2 have been on the market for a couple of months, but since the processor is rather inexpensive, yet supports 4K UHD video output, Gigabit Ethernet and USB 3.0 interfaces, Pine64 has decided to create a new development board called ROCK64 with a form factor similar to Raspberry Pi 3 board.

Click to Enlarge

ROCK64 board specifications:

  • SoC – Rockchip RK3328 quad core Cortex A53 processor with ARM Mali-450MP2 GPU
  • System Memory – 1, 2, or 4 GB LPDDR3 @ 1866 MHz
  • Storage – eMMC flash module socket + micro SD card slot + 128 Mbit SPI flash
  • Video & Audio Output – HDMI 2.0a up to 4K @ 60 Hz with HDR10 and HLG support, 3.5mm AV port (composite video + stereo audio)
  • Video Codec – 4K VP9, H.265 and H.264, 1080p VC-1, MPEG-1/2/4, VP6/8
  • Connectivity – Gigabit Ethernet
  • USB – 2x USB 2.0 ports, 1x USB 3.0 port
  • Expansion Headers
    • 40-pin Pi-2 Bus with GPIOs, 2x I2C, Analog inputs, UART, SPI, and power signals (5V, 3.3V, and GND)
    • 22-pin Pi-P5+ Bus with GPIOs, I2S, S/PDIF, Ethernet, and power signals (5V, 3.3V, and GND)
  • Misc – IR receiver; power, recovery  & reset buttons; eMMC jumper
  • Power Supply – 5V/3A via 3.5mm/1.35mm power barrel
  • Dimensions –  85 x 56 mm

Click to Enlarge

The board will support various operating system including Android 7.1, Debian, Yocto Linux, and more. Some of the source code and software development tools are already available in github.

The board will be launched on the first of July, but price has not been announced yet due to the recent DRAM price hike. For reference, RK3328 TV boxes with 1GB RAM now sell for around $35 and the ones with 2GB RAM for around $45. Those prices include shipping and all accessories, and considering Pine64’s usually aggressive pricing, ROCK64 board may be sold for around $25 (1GB RAM), $35 (2GB RAM) and $45 to 50 (4GB RAM) excluding shipping. You’ll find a few more details, including PDF schematics and pinout diagrams, in the product page.

Click to Enlarge

Update: I’ve just received my board, and updated the pictures above. I also came with a FORESEE eMMC module (see first picture), and a 5V/3A power supply.