Archive

Posts Tagged ‘ubuntu’

Linaro 14.12 Release with Linux 3.18 and Android 5.0

December 19th, 2014 No comments

Linaro usually releases images and source code on the last Thursday of the month, but since most people will have long holidays for Chritsmas and New Year, the last working Thrusday of this month was yesterday (18th). Linaro 14.12 release includes Linux kernel 3.18 (baseline), Linux 3.10.62 & 3.14.26 (LSK, same versions as last month), and Android 5.0.1 Lollipop.

Here are the highlights of this release:

  • Linux Linaro 3.18-2014.12
    • Based on v3.18 release
    • GATOR topic: version 5.20
    • updated topic from Qualcomm LT (includes IFC6410 board support)
    • updated integration-linaro-vexpress64 topic by ARM LT (FVP Base and Foundation models, and Juno support)
    • updated LLVM topic (uses the community llvmlinux-latest branch)
    • included ILP32 patch set v3  rebased on 3.18. Boot tested with aarch64 userland. Work is in progress to test with aarch64-ilp32 userland.
    • config fragments updated – SELinux related config options enabled in linaro-base.conf, device tree runtime self tests enabled in distribution.conf
  • Linaro builds of AOSP 14.12
    • built with AOSP toolchain
    • All the Android builds have been updated to 5.0.1
    • Audio on Versatile Express TC2 is fixed (Android 5.0.1)
    • DNS issue fixed on Juno, FVP models and Versatile Express TC2 (Android 5.0.1)
    • daily CI updated to include benchmarks for Versatile Express TC2 and Juno
  • Linaro OpenEmbedded 2014.12
    • integrated Linaro GCC 4.9-2014.11 and Linaro binutils 2.24-2014.11
    • switched from eglibc to Linaro glibc 2.20-2014.11
    • improved external toolchain support
    • improved ACPI tooling
    • added python-numpy to images for LAVA tests
    • upstreaming:
  • Linaro Ubuntu 14.12 – updated packages: juno-pre-boot, LSK 3.10.62/3.14.26 and linux-linaro 3.18 kernels
  • CI loop for testing the pre-built Linaro toolchain using the OpenEmbedded external toolchain support has been reactivated
  • ARMv8 Ubuntu engineering build for Enterprise is available
  • CI bring up: HiSilicon Hi3716cv200
  • CI bring up: EAS (Energy Aware Scheduling) development – integration branch testing
  • Publish OpenSDK images on snapshots.linaro.org
  • Ship board recovery image into hwpack for Juno

You can visit https://wiki.linaro.org/Cycles/1412/Release for a list of known issues, and further release details about the LEB, LMB (Linaro Member Builds), and community builds, as well as Android, Kernel, Graphics, Multimedia, Landing Team, Platform, Power management and Toolchain components.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Giayee Atom PC is a Rockchip RK3288 Mini PC with a VGA Port, Multiple Placement Options (Crowdfunding)

December 17th, 2014 7 comments

You may know that Rockchip and Intel have a partnership to design Atom Sofia processors, but Giayee Atom PC has nothing to do with this initiative at all, and it’s just a pretty standard Rocchip RK3288 based mini PC, except it includes a VGA port, and various “placement” options namely horizontal position, vertical position, and TV/monitor mount.

Giayee_Atom_PCAtom PC specifications:

  • SoC – Rockchip RK3288 Quad Core Cortex A17 up to 1.8GHz with ARM Mali-T764 GPU supporting OpenGL ES1.1/2.0/3.0, Open VG1.1, OpenCL, DirectX11
  • System Memory – 2GB DDR3
  • Storage – 8 GB NAND flash (16 to 32 GB optional)
  • Video Output- HDMI up to 1080p (no 4K?), and VGA up to 1920×1080 @  60 Hz
  • Audio Output / Input – HDMI, 3.5 mm jacks for Audio In and Out
  • Connectivity – 10/100M Ethernet, 802.11 b/g/n Wi-Fi. Options: Dual band Wi-Fi, GPS, NFC, and Bluetooth
  • USB – 4x USB Host ports, 1x micro USB host port
  • Other Optional Functions – Camera, LCD, 3G, UART, LVDS, MIPI…
  • Misc – Power button
  • Power Supply – 5V/2A
  • Power Consumption – > 7 Watts

Atom_PC_BoardThe specifications are rather underwhelming, and it’s probably only interesting if you need VGA output, and/or microphone input, and TV / monitor mount (is that VESA mount?, not sure…) combined with the power for RK3288 processors. Optional features such as GPS, NFC, MIPI could make it interesting, and it looks like an RTC battery slot might even be available, but none of these are available in perks listed in the crowdfunding campaign. Some of the specifications are probably wrong, as I hope they us an eMMC flash, instead of a slower NAND flash in their system, and HDMI should support up to 4K30. Android 4.2.2 and Ubuntu 12.04.5 operating are said to be supported. I can’t even remember ever seeing Android 4.2 running in any RK3288 device, so most probably they’ll provide Android 4.4 (and maybe Android 5.0) together with Ubuntu 14.04 or greater.

Atom_PC_Mounting_OptionsThe company has launched the project on Indiegogo, and expects to raised a lowly $10,000, but if they’ve spent as many efforts and attention to detail on product development as they’ve spent on their campaign page, it does not inspire confidence. Pricing is not exactly aggressive either, as the early bird pledge starts at $119 with a 5V/3A power adapter, a base for vertical orientation, and including shipping by DHL to anywhere in the world, with delivery scheduled for March 2015.

You can check the Android and Ubuntu demo below.

Thanks to Nanik for the tip.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

ODROID-XU3 Lite Board Ubuntu Review – Setup, Usability, and Performance

December 14th, 2014 13 comments

After testing ODROID-XU3 Lite with Android 4.4, and finding a workaround to some HDMI issues, I could finally try out Ubuntu, or rather Lubuntu with LXDE instead of Unity, in Hardkernel low cost octa-core development board. I’ll start this review by explaining how to install and setup Lubuntu on the board, followed by running various program to test the system usability as a desktop computer with LibreOffice, Chromium, XBMC, and 3D graphics, and finally run some performance tests with Phoronix Test Suit, build the Linux kernel natively, and transcode a video with avconf.

Setting Up Ubuntu on ODROID-XU3 Lite

All firmware images for ODROID development boards, can be found on odroid.in website, and if you want Ubuntu 14.04 image, go to ubuntu_14.04lts folder, to select the latest firmware file for your board. The latest image for ODROID-XU3 (Lite) is currently ubuntu-14.04.1lts-lubuntu-odroid-xu3-20141105.img.xz, it’s the same for micro SD card or eMMC boot. You should have gotten a eMMC to micro SD adapter if you’ve purchased an eMMC module from Hardkernel.

You can download, extract, and flash the image with dd (Linux) or Win32DiskImager (Windows). For example. in a terminal in a Linux computer:

wget http://odroid.in/ubuntu_14.04lts/ubuntu-14.04.1lts-lubuntu-odroid-xu3-20141105.img.xz
sudo apt-get install xz pv
xz -d ubuntu-14.04.1lts-lubuntu-odroid-xu3-20141105.img.xz
dd if=ubuntu-14.04.1lts-lubuntu-odroid-xu3-20141105.img | pv | sudo dd of=/dev/sdX

Where X is the letter of your micro SD or eMMC module inserted into your computer. Check the value carefully with lsblk before running the dd command, or you may lose your data stored on other drives connected to your computer,. For extra safety, you could also consider doing this procedure in a virtual machine, for example by running Ubuntu in VirtualBox.

Now insert the micro SD card or connect the eMMC module to the board, and you configure the boot switch between the Ethernet and USB ports as shown below using a pen or tweezers. For eMMC both must be in high position, whereas for SD card boot one must be down.

ODROID-XU3_Lite_Boot_Switch

Left: eMMC Boot; Right: Micro SD Card Boot

Now connect a keyboard, mouse, the HDMI cable, Ethernet, and/or other peripherals you may want to connect and power up the board by connecting the provided 5V/4A power supply. A typical boot should complete in around 22 seconds, although the first boot might take a little longer.

Lubuntu Desktop in ODROID-XU3 Lite

Lubuntu Desktop in ODROID-XU3 Lite

A this stage, the installation is nearly complete, and you should already have a usable system, however, if you’ll see that the rootfs partition is only 4.9GB with 310 MB available (that’s after installing LibreOffice):

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2  4.9G  4.4G  310M  94% /

Since my eMMC module has a capacity of 16GB, it would be nice to use all of it. Normally, you’d use fdisk/parted, and resize2fs  to get the full size, but Hardkernel provides ODROID Utility that can do just that among others. So click on the icon on the top right to launch the program, input the password (odroid), and after running apt-get update automatically, the following interface should appear.

ODROID_UtilityClick on Resize your root partition, and after making sure the root partition is in /dev/mmcblkp2, click <Yes> to continue and resize the root partition on your micro SD card or eMMC module. After a reboot, you can check all the available storage in a terminal:

df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/mmcblk0p2   15G  4.4G  9.4G  32% /

9.4GB available out of a 15GB partition. Perfect! The setup is now complete.

Using ODROID-XU3 Lite as a Desktop Computer / Media Player

The Ubuntu image comes pre-loaded with Firefox, Chromium, Transmission, Arduino IDE, Abiword, PacmanFM, XBMC and a few others programs. Since they probably wanted to keep the image reasonably small, they did not install large program, but I install LibreOffice for a better office suite, and Nautilus for a file manager with Network Shares access:

sudo apt-get install libreoffice nautilus

The system is extremely responsive, and if you’re using a computer with a mechanical drive, ODROID-XU3 Lite will boot and load programs much faster than your full-blown Intel/AMD computer.

The best way to showcase ODROID-XU3 (Lite) capabilities is to shoot a video, so I’ve just done that showing:

  1. 20 seconds boot
  2. ODROID Utility options
  3. List of installed applications
  4. LibreOffice (Writer)
  5. Chromium – Multi-tabs, YouTube (embedded / full screen; VP9 / H.264/AVC1), and Candy Crush Saga (Flash game) in Facebook
  6. 3D hardware acceleration with es2gears
  7. XBMC Media Player with 2D/3D OpenGL ES and hardware video decoding.
  8. Power off

I’ve also opened a terminal running htop to show the eight cores CPU usage during these tests.

Side note: Since my camera (Canon Powershot A2300 HD) is pretty poor at shooting videos of screens, I’ve used SJ1000 action camera instead as the image is much sharper, but there’s a fisheye effect due to the wider angle of such camera. There are some tools in Linux including Python scripts and KDEnlive that can remove the fishing effect, but they introduce some aliasing, which does not look nice in this type of video, although it’s probably acceptable for content without text or thin lines.

Based on these tests, ODROID-XU3 Lite can be used as a desktop replacement or an XBMC media center, but you have to be aware of some limitations:

  • YouTube embedded videos play usually well, and 360p/480p full screen video play quite well, but the user experience is not very good with 1080p full screen videos, either with VP9 or H.264 codec.
  • Adobe Flash is not pre-installed, but in Chromium, it should be quite easy to install libpepperflash.so to enable Flash support. I have not tried, but normally, flash performance on ARM is rather subpar compared to x86.
  • The window manager may not be hardware accelerated with the GPU.

For all other uses, ODROID-XU3 Lite is clearly the best ARM Linux platform, I’ve tried so far, with a fast eMMC, 2D/3D hardware accelerated graphics (for apps that support OpenGL ES only), and hardware video decoding.

Other Use Cases and Performance

Before starting some benchmarks, I’ll check what type of Exynos 5422 I have in my system:

root@odroid:~# dmesg | grep BIN                                                 
[    0.355271] [c6] CPU Info : Samsung Exynos5422 Soc is BIN2

BIN1 is for the Exynos 5422 processor clocked up to 2.2 GHz found in ODROID-XU3 board, and BIN2 is limited to 1.8 GHz, and normally found in the Lite version of the board which I’m reviewing right now.

Phoronix Suite Benchmarks

Antutu is the most famous benchmark in Android, but in Linux, Phoronix Test Suite is the reference. It’s a bit more complicated to use than Antutu, but more flexible, and throrough.

sudo apt-get install php5-cli php5-gd php5-gd
wget http://phoronix-test-suite.com/releases/repo/pts.debian/files/phoronix-test-suite_5.4.0_all.deb
sudo dpkg -i phoronix-test-suite_5.4.0_all.deb

After apt-get install,. I had to run “sudo apt-get install -f” to complete the installation.

Than I’ve followed the instructions here, and selected four tests from the suite to test audio encoding, multi-core file compression, server, and disk I/Os:

phoronix-test-suite batch-benchmark pts/encode-mp3 pts/compress-7zip pts/apache pts/iozone

It turns out the iozone test for disk I/O takes nearly five hours, and recently my computer tends to turn off randomly, and since I started the test from an ssh console, the test got interrupted, so I only ran encode-mp3, compress-7zip, and apache benchmarks which last only about 15 minutes in total.

Out of the three test, compress-7zip failed because of a lack of memory:

[c4] Out of memory: Kill process 9593 d
[16693.088181] [c4] Killed process 9593 (7za) total-vm:1844536kB, anon-rss:1509B

So the whole Phoronix benchmarks did not exactly work out as expected, but you can find the result for MP3 encoding and Apache tests @ http://openbenchmarking.org/result/1412146-LI-20141214131

ODROID-XU3-Lite_Phoronix_Intel_Core_i3_radxa_proI’ve compared the ODROID-XU3 Lite results to some recent results on Openbenchmarking website including an Intel Core i3-4150 quad core system (cpu-ubuntu), an older Intel Atom N570 system (2G), and Radxa Pro board powered by Rockchip RK3188 processor. So Exynos 5422 can’t match a recent Core i3 processor yet (which by itself costs more than ODROID-XU3 Lite board), but does well against N570 netbook processor, and is about twice as fast as Radxa Rock Pro board in these two tests.

Mainline kernel compilation

People may want to use this powerful low cost Octa core board in build farm, so I though it would be fun to try building Linux mainline kernel natively. Let’s installing dependencies, and get the source latest Linux release (3.18) first.

sudo apt-get install libncurses5-dev gcc make git exuberant-ctags
git clone git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
cd linux-stable
git checkout -b stable v3.18

Ubuntu 14.04 comes with gcc 4.8.2 only, but this compiler will break Linux mainline build, so I had to install gcc 4.9 instead:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-4.9

You’ll also note some ODROID boards are already part of mainline, probably with partial support, but unfortunately ODROID-XU3 (Lite) kernel has not been upstreamed yet.

root@odroid:~/linux-stable# ls -l  arch/arm/boot/dts | grep odr                 
-rw-r--r-- 1 root root   8334 Dec 14 14:11 exynos4412-odroid-common.dtsi        
-rw-r--r-- 1 root root   1310 Dec 14 14:11 exynos4412-odroidu3.dts              
-rw-r--r-- 1 root root    829 Dec 14 14:11 exynos4412-odroidx2.dts              
-rw-r--r-- 1 root root   1691 Dec 14 14:11 exynos4412-odroidx.dts

Anyway, let’s build the kernel for Exynos processor, and see how fast the board can compile a Linux kernel:

make exynos_defconfig
time make -j8 CC=gcc-4.9
...
real    5m43.746s
user    31m25.235s
sys     4m11.130s

So it takes less than 6 minutes to build the kernel on ODROID-XU3 Lite, about 4 times longer than on a powerful, but much more power hungry (300W) AMD FX8350 based computer. In other words, it should be possible to achieve the same performance as my computer using 4 or 5 ODROID-XU3 Lite boards in a mini build farm using distcc compilation for about the same price, but only a fraction of the power consumption, and of course native compilation has advantages over cross-compilation, since some tests may have to be skipped for the latter.

Video Transcoding with avconv

Finally, one follower on G+ asked me to test MPEG2 to H.264 video transcoding with ffmpeg. The latter does not seem to be available, and as been replaced by avconc, so I installed libav-tools instead, and ran the transcoding.

sudo apt-get install libav-tools
time avconv -i big_buck_bunny_1080p_MPEG2_MP2_25fps_6600K.MPG \
-vcodec libx264 -minrate 300k -maxrate 300k -bufsize 1835k bbb-h.264.avi
avconv version 9.16-6:9.16-0ubuntu0.14.04.1, Copyright (c) 2000-2014 the Libav s
built on Aug 10 2014 18:32:09 with gcc 4.8 (Ubuntu/Linaro 4.8.2-19ubuntu1)
Guessed Channel Layout for  Input Stream #0.1 : stereo
Input #0, mpeg, from 'big_buck_bunny_1080p_MPEG2_MP2_25fps_6600K.MPG':
Duration: 00:00:44.74, start: 0.240000, bitrate: 7159 kb/s
Stream #0.0[0x1e0]: Video: mpeg2video (Main), yuv420p, 1920x1080 [PAR 1:1 Dc
Stream #0.1[0x1c0]: Audio: mp2, 44100 Hz, stereo, s16p, 160 kb/s
[libx264 @ 0x6c9c0] using SAR=1/1
[libx264 @ 0x6c9c0] MB rate (734400000) > level limit (2073600)
[libx264 @ 0x6c9c0] using cpu capabilities: ARMv6 NEON
[libx264 @ 0x6c9c0] profile High, level 5.2
Output #0, avi, to 'bbb-h.264.avi':
Metadata:
ISFT            : Lavf54.20.4
Stream #0.0: Video: libx264, yuv420p, 1920x1080 [PAR 1:1 DAR 16:9], q=-1--1c
Stream #0.1: Audio: libmp3lame, 44100 Hz, stereo, s16p
Stream mapping:
Stream #0:0 -> #0:0 (mpeg2video -> libx264)
Stream #0:1 -> #0:1 (mp2 -> libmp3lame)
Press ctrl-c to stop encoding
frame= 1035 fps= 8 q=55.0 size= 30701kB time=40.52 bitrate=6206.7kbits/s

It took 2 minutes 31 seconds to encode a 44 seconds video, so real-time 1080p video transcoding is currently not feasible with avconv / ffmpeg.

Have said that, Exynos 5422 supports video decoding and encoding, so it should be possible to write a program using the MFC (Multi-Format Codec) driver for Exynos. I could not find any sample code, but having a look a XBMC source code for ODROID boards might be a start, since it’s using the MFC drivers for decoding.

ODROID-XU3 Lite can be purchased directly from Hardkernel for $99 + shipping, or through distributors like Ameridroid (USA) or Pollin Electronics (Germany). Adding an eMMC module, an HDMI cable, and the serial debug board to your order is recommended, although you could replace the eMMC with a fast micro SD card (class 10 or greater) for a still decent performance.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

How to Modify HDMI Output Parameters in Linux for ODROID-XU3 (Lite) Development Board

December 13th, 2014 4 comments

Good news, I’ve finally managed to make HDMI output in my ODROID-XU3 Lite development board with the Ubuntu image, after some more tweaking. so ODROID XU3 Lite Ubuntu review is coming in the next few days. But first, I’ll explain the few steps I went through, in case other experience a similar issue.

Lubuntu Screenshot in ODROID-XU3 Lite (Click for Original Size)

Lubuntu Screenshot in ODROID-XU3 Lite (Click for Original Size)

I downloaded, extracted, and flashed the latest Ubuntu image to a micro SD card with dd to give another try at running Ubuntu on my board, but not luck, I still got that black screen, albeit the system boots properly, as I got the command line using the serial console.

During my Android review of ODROID-XU3 Lite, I noticed the system would always revert back to 720p60 video output, and HDMI output settings can be selected in in /media/boot/boot/ini with the following content:

ODROIDXU-UBOOT-CONFIG

# U-Boot Parameters
setenv initrd_high "0xffffffff"
setenv fdt_high "0xffffffff"

# Mac address configuration
setenv macaddr "00:1e:06:61:7a:39"

#-------------------------------------------------------------------------------
# Basic Ubuntu Setup. Don't touch unless you know what you are doing.
# --------------------------------
setenv bootrootfs "console=tty1 console=ttySAC2,115200n8 root=UUID=e139ce78-984"
                                                                                
# boot commands                                                                 
setenv bootcmd "fatload mmc 0:1 0x40008000 zImage; fatload mmc 0:1 0x42000000 u"
                                                                                
# --- Screen Configuration for HDMI --- #                                       
# ---------------------------------------                                       
# Uncomment only ONE line! Leave all commented for automatic selection.         
# Uncomment only the setenv line!                                               
# ---------------------------------------                                       
# ODROID-VU forced resolution                                                   
# setenv videoconfig "video=HDMI-A-1:1280x800@60"                               
# -----------------------------------------------                               
# 1920x1080 (1080P) with monitor provided EDID information. (1080p-edid)        
# setenv videoconfig "video=HDMI-A-1:1920x1080@60"                              
# -----------------------------------------------                               
# 1920x1080 (1080P) without monitor data using generic information (1080p-noedi)
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1920x1080.bin"          
# -----------------------------------------------                               
# 1280x720 (720P) with monitor provided EDID information. (720p-edid)           
# setenv videoconfig "video=HDMI-A-1:1280x720@60"                               
# -----------------------------------------------                               
# 1280x720 (720P) without monitor data using generic information (720p-noedid)  
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1280x720.bin"             
# -----------------------------------------------                               
# 1024x768 without monitor data using generic information                       
# setenv videoconfig "drm_kms_helper.edid_firmware=edid/1024x768.bin"           
                                                                                
                                                                                
# final boot args                                                               
setenv bootargs "${bootrootfs} ${videoconfig} smsc95xx.macaddr=${macaddr}"      
# drm.debug=0xff                                                                
# Boot the board                                                                
boot

I actually tried a few settings in my previous attempt by unsuccessfully. However, now I knew that 1080p does not work in Android with my TV, so I focused on the 720p settings.

Trying 720p-edid, lead to a black screen, but enabling 720p-noedid worked around the issue, and I could finally see LXDE desktop environment on my TV.  That means my TV (Panasonic TH-L39EM6T) and ODROID-XU3 Lite board have issues communicating EDID information, and it’s most probably a driver issue that needs to be fixed, but at least, if you encounter a black screen with your board, it’s worth spending some time trying all options in boot.ini.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

WeTek Play Android & Linux DVB-S2 / DVB-C/T/T2 Receivers are Now Available for 109 Euros

December 13th, 2014 24 comments

I reviewed Wetek Play Android media player with a DVB-S2 tuner this summer, and although I found it pretty good for a dual core media player, and liked its PVR functions, more work was needed to fix several bugs, and improve “WeTek Theater Live TV” app. Several months later, they must consider their devices ready, as they’ve now launched their online store selling the DVB-S2 and DVB-C/T/T2 versions for 109 Euros, and a version without DVB tuner for 99 Euros, all including free shipping worldwide.
Wetek_PlayLet’s remind us of the specifications:

  • SoC – Amlogic AML8726-MX dual core Cortex A9 @ 1.5GHz with a dual core Mali-400MP GPU
  • System Memory – 1GB DDR3
  • Storage – 4 GB NAND flash + 1x micro SD slot
  • Video Output – HDMI, AV (CVBS + R/L audio)
  • Audio Output – HDMI, AV, and optical S/PDIF
  • Tuners – DVB-S2, or DVB-C/DVB-T/DVB-T2 depending on model with two antenna connectors. ATSC and ISDBT versions may also be in the works based on the released datasheet.
  • Connectivity – 10/100M Ethernet, 802.11 b/g/n Wi-Fi , and Bluetooth 4.0 (AP6210)
  • USB – 3x external USB 2.0 ports, 2x internal USB 2.0 ports (used by anti-copy USB token, and RF dongle for remote)
  • Debugging – Serial debug port
  • Misc – IR receiver, 3 LEDs for power, Ethernet and Wi-Fi, RS-232 port for serial console.
  • Power – 12V/1.5A
When I received WeTek Play package it included the media player, a 12V/1.5A power supply, a RS232 serial cable for debugging, a IR + RF remote, and a registration card to activate your device online. The retail package will include all that, plus an HDMI cable, and a multilingual Quick Start Guide.
Wetek_Play_DVB-T2

WeTek Play DVB-C/T/T2

Beside running Android 4.4, the company also provided me with some images for Lubuntu 14.04, Linux Enlightement, CyanogenMod, AOKP, OMNI ROM, and PanaroidAndroid, as well as CWM and TWRP recovery. But these are rather old, so I’d wait for the latest images on their Download page (now empty, except user’s guide). More recently, I’ve also received links to the latest OpenElec 5.0 and Android 4.2 images. You might also find more details on WeTek forum, where the Linux section is moderated by codesnake an active OpenElec developer. The device is also one of the rare Android media players to be get the Google GMS certification.

Further details can be found on WeTek Play product page.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

PopMetal Rockchip RK3288 Development Board Features Multiple Display Interfaces (HDMI, VGA ,eDP, LVDS, MIPI), GPS and NFC Connectivity

December 12th, 2014 No comments

Up to now, we’ve had mainly two development boards based on Rockchip RK3288 Cortex A17 processor: Firefly-RK3288 is a low cost development board powered by Rockchip RK3288 processor selling for as low as $140 shipped, and Radxa Rock 2, a more professional and expansive solution with dual Ethernet, 3G modem and so on. A third RK3288 board has now surfaced which offers a middle ground between Firefly and Radxa boards. PopMetal development board comes with 2GB RAM, 8GB eMMC, 5 video outputs / display interfaces namely HDMI, VGA, embedded DisplayPort (eDP), LVDS, and MIPI DSI, as well as the usual Gigabit Ethernet, Wi-Fi, and Bluetooth connectivity, complemented with GPS and NFC.

ChipSpark PopMetal Board (Click to Enlarge a Bit...)

ChipSpark PopMetal Board (Click to Enlarge a Bit…)

PopMetal technical specifications:

  • SoC – Rockchip RK3288 quad core ARM Cortex-A17 processor @ 1.8Ghz with ARM Mali-T764 GPU with support for OpenGL ES1.1/2.0/3.0, OpenVG 1.1, OpenCL 1.1, DirectX 11
  • System memory – 2GB DDR3
  • Storage – 8 GB eMMC, SATA connector for 2.5″ HDD/SSD (TBC), and micro SD card slot
  • Connectivity – Gigabit Ethernet, 802.11 b/g/n and 802.11ac Wi-Fi, Bluetooth 4.0, GPS, and NFC. Two external antennas for Wi-Fi and GPS.
  • Video Output / Display Interfaces
    • HDMI 2.0 up to 4kx2k@60hz
    • VGA up to 1080p
    • LVDS
    • eDP (embedded DisplayPort)
    • MIPI DSI
  • Audio I/O – HDMI, 3.5mm headphone jack, built-in microphone, LINE IN, optical S/PDIF, audio output headers.
  • Camera – MIPI CSI connector, CIF connector
  • USB – 3x USB 2.0 host ports, 1x micro USB OTG port, 1x micro USB debug port
  • Debugging – Serial console via micro USB debug port
  • Misc – Home, Vol +/-, and power buttons, IR receiver, three jumpers
  • Power – 5V/3A
  • Dimensions – 15 x 9.2 cm

I’m not quite sure what the DTV connector is for, but I assume it could be MIPI DSI interface, with the other MIPI connector being reserved for the camera.PopMetal_RK3288_Board_SATAPopMetal is made by ChipSpark, the same company who designed and manufactures Rayeager PX2 board, and while there’s plenty of documentation the latter, nothing related to PopMetal has been published on the Wiki so far, but Android, Ubuntu, and Chrome OS operating systems will be supported.

You won’t find more much details on ChipSpark PopMetal product page, but the product is listed for $199 US. I could add it to the cart, but trying to sign-in with Facebook or Twitter failed. Shipping costs are not included, and they ship by FedEx.

Via Linux-rockchip G+ community

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Boot Ubuntu (Linux) or Android from an SD Card on Rockchip RK3288 Devices

December 11th, 2014 7 comments

There’s already a method to boot Android from an SD Card on RK3188 devices, which should work with all Rockchip RK3188 devices. Ian Morrison (Linuxium) has now provided a instructions to boot Linux or Android from a (micro) SD Card in Rockchip RK3288 based devices, leveraging work from linux-rockchip community, and especially naobsd.

Android_Ubuntu_SD_Card_RK3288
The Android flashing method is slightly different between RK3188 and RK3288, because most Rockchip RK3288 devices make use of eMMC flash, while older Rockchip RK3188 products feature NAND flash, and it appears Rockchip RK3xxx boot priorities (in the BootROM stored in the SoC itself) are as follows: eMMC, SD card, and NAND flash. All that means is that an updated version of the bootloader is needed which looks for a bootable SD card, and although very unlikely, your device could end up being bricked during this procedure. This is not a problem for Open Hour Chameleon since there’s no internal storage at all, so it will always boot from SD card and is really unbrickable.

First, you’ll need to download create-sdcard.7z with the tools, and images required.

Updating the bootloader

Then may want to make sure your device is using RK3288Loader_uboot_V2.17.02.bin bootloader (or latter). You can do so by loading the firmware file (currently installed in your device)  in AndroidTool, flashing the firmware with upgrade_tool, running ‘cat /proc/cmdline’ in a terminal, or simply trying a bootable SD card with the method below.

If you are pretty sure you need to upgrade your bootloader, download RK3288Loader_uboot_V2.17.02.bin, and flash it to your device in Linux with:

sudo ./upgrade_tool ul RK3288Loader_uboot_V2.17.02.bin

If you prefer to use Windows, you can use AndroidTool v2.3 or greater instead using the “Loader” row.

Creating a Bootable Android SD Card

At this stage, flashing an Android SD card image is easy, as you just have to run:

./create-android-sdcard firmware_update.img

where firmware_update.img is your device Android firmware. The script default to /dev/sdc, but you’ll be asked to confirm the device path, and have the ability to change. Please run lsblk first to make sure you are using the right storage device, or you may wipe out important data on your PC. For extra safety, you may even consider doing this procedure from a virtual machine in VirtuaBox.

That’s it now, you can just insert the SD card into your device to boot Android.

Creating a Bootable Ubuntu SD Card

For a quick try, you could download one of Ubuntu 12.04 or Ubuntu 14.04 SD card images, uncompress it, and flash it to a SD card with dd (Linux) or  Win32DiskImager (Windows). Then just insert it in your device SD card slot, and it should boot Ubuntu. This is a generic image so things like Wi-Fi, and audio may not work properly. The username / password are linuxium / p.

You’ll probably want to expand the rootfs to make full use of your SD card capacity, with a command line:

echo -e "d\nn\np\n1\n139265\n\nw" | sudo fdisk /dev/mmcblk1

Then reboot, login, and type

sudo resize2fs /dev/mmcblk1p1

to complete the resizing.

If you want an image more suited to your hardware, you may have to use sd-create-linux script instead included in create-sdcard.7z previously downloaded together with relevant firmware files for  Firefly-RK3288 board, Rikomagic MK802V, and Tronsmart Orion R28, and other hardware based on the same hardware platforms. If your device is different, you may want to extract kernel.img and resource.img from your Android firmware, or build these yourself, and rename then as kernel-linux.img and resource-linux.img.

Before running the script you’ll also have to download the rootfs for Ubuntu 12.04 or Lubuntu/Xubuntu 14.10, unzip it, and rename the file as linux-rfs.img.

Finally insert the SD card into your Linux PC, and run the script to create the SD card:

./create-linux-sdcard

It will ask to confirm/change the SD card device path, and create a bootable Ubuntu SD card for your RK3288 device.

Boot from SD card with Rootfs on USB flash drive

Some SD card (class 4) can be pretty slow, and USB flash drives may even be faster than some Class 10 SD cards, so Linuxium published another short guide yesterday, booting from SD card, but with the rootfs on the USB flash for potentially better performance, and especially more flexibility.

After downloading and extracting create-linux-sdcard-usb.7z, run ./create-linux-sdcard-usb script  to generate a bootable SD card without rootfs, and flash one of the rootfs above or your own with dd / Win32DiskImager to a USB flash drive. Insert the bootable SD card and USB flash drive into your Rorkchip RK3288 mini PC, and enjoy!

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Android 4.4 and Ubuntu 14.10 Tested on Ugoos UM3 mini PC (Rockchip RK3288)

December 10th, 2014 13 comments

A few days ago I posted pictures of Ugoos UM3, a cute mini PC powered by Rockchip RK3288 quad core Cortex A17 processor, with 2GB RAM, 8GB internal storage, a few USB ports, and Wi-Fi 802.11 b/g/n/ac connectivity. There are so many Rockchip RK3288 based TV boxes and sticks on the market, that it has become difficult to differentiate, so Ugoos has decided to support not only Android 4.4 like all their competitors, but also Ubuntu 14.10, and they’ve provided an alpha release of dual boot Android / Ubuntu images for Ugoos UT3 and UM3 models.

Yesterday, I flashed the latest Android/Ubuntu firmware for UM3, and tested the image, so today I can report my findings. First of all, I’d like to point out that I received an earlier sample with various flaws that I reported to Ugoos, and they’ve already committed to fixes:

  • 5V/2A power adapter is not powerful enough to drive the box and an external hard drive, leading to HDMI TV blinking, and reboots. Fix: Change power adapter to 5V/3A.
  • No heatsink leading to 100+ C temperature and reboot in Antutu benchmark, even with better power supply. Fix: All finished UM3 have an heatsink (metal plate) as shown below.
    Ugoos_UM3_metal_plate
  • Confusing OTG/DC marking on micro USB DC only port, and no marking on actual USB OTG port. Fix: The case will be update to show where the full-sized USB OTG port is.

So now that we’ve got these engineering sample issues out of the way, let’s talk a bit about the firmware. If you’d rather not read, and just watch the video, scroll down to the bottom of this post. Right after flashing, the firmware will boot to Android by default.

Android Home Screen (Click for Original Size)

Android Home Screen (Click for Original Size)

The system has actually two launchers pre-installed, the stock Android home screen as pictured above, and the same TV-friendly user interface as Nagrace HPH NT-V6. The company has also added “Ugoos” settings to the firmware which are options to display CPU usage (overall or per cores), cores frequency, and memory usage. There are two partitions reserved for Android out of the 8GB flash: a 0.95 GB partition for apps, and a 2.17 GB partition for data. I’ve tried Antutu benchmark, but either the 5V/2.5A power supply I used is not powerful enough (even when no hard drive is connected), or the temperature went above 100 C for too long, and the system simply reboots. I did not use my 5V/8A power supply since I have not made a 5.5/2.1mm power barrel to micro USB adapter yet.

That’s all I did with Android, then I clicked on the power button in the task, and selected Switch System option. Within 45 seconds, I got to login prompt for user ugoos, enter the password (ugoos), ans started to play around.

Ubuntu 14.10 + XFCE (Click for Original Size)

Ubuntu 14.10 + XFCE (Click for Original Size)

The first task was to connect Wi-Fi, which mostly worked, except DNS would not work properly. /etc/resolv.conf seems to be hardcoded to 192.168.2.1, which my router IP address is actually 192.168.0.1. To fix the DNS issue, I ran a few commands:

sudo rm /etc/resolv.conf
sudo ln -s /run/resolvconf/resolv.conf /etc/resolv.conf
sudo resolvconf -u

Wi-Fi won’t connect automatically at boot time, and I always had to click on my ESSID in the menu on the top right to connect to the network. USB Ethernet is supposed to work, but it’s not something I’ve tried. I’ve also checked the storage reserved for Ubuntu rootfs: 3.2 GB with 1.4 GB used, so 1.8 GB free, and we can also access the 2.3GB Android “data” partition from Ubuntu.

So after I tried LibreOffice which boots in a few seconds, typed a short seconds with a USB keyboard, and as expected I did not encounter any issues here. Then I switched to Chromium, but YouTube would refuse to load and complained with the message “Connection is not private”, and recommending to set the date/ time of the computer. So I looked for a way to configure the date and time in XFCE, and apparently it’s not possible from the user interface, so instead I used command tools to set the timezone, and get the time from NTP:

timedatectl list-timezones
timedatectl set-timezone Asia/Bangkok
sudo ntpdate-debian

timedatectl is part of systemd-services (in Ubuntu), but I can’t remember if ntpdate was pre-installed. If it was not simply:

sudo apt-get install ntpdate

After setting the correct date and time, I could use Chromium to test the following:

  • Loading cnx-software.com – No problem, it loaded reasonably fast, and all items were properly displayed.
  • Playing an embedded YouTube video in CNX Software – OK (360p)
  • Playing the same YouTube video in YouTube – Some audio cuts and video may be choppy at time (480p)
  • Same YouTube Video (VP9 – 480p) in full screen – Video even more choppy, and audio cuts more frequent
  • Facebook Flash games – Candy Crush Saga: Will only load up to 67% of the game, and I could not play; Angry Birds with Friends: Load with error message: “This application is not correctly embedded. Wrong wmode value”.

So the web browsing experience is far from optimal, at least if you plan to use YouTube, or other online video services, or play flash games.

For the next step, I went to my USB hard drive (NTFS partition) in the File Manager, and clicked on a 1080p H.264 video (Big Buck Bunny) which started mplayer, and play the video smoothly. Later I tried the MP4 version of the video, and noticed some slowdowns. So some 1080p videos may play just fine, and some others not so. To make sure video decoding was done by software, I also tried to play a 4K video, and as expected it was a disaster (2 to 3 frames per second).

Finally I installed es2gears to confirm 2D/3D graphics acceleration is not enabled (yet):

sudo apt-get install mesa-utils-extra

Running es2gears will simply fail, and not even fallback to software rendering. I forgot to capture the exact error message, and one of the warning reads “libEGL warning: DRI2 failed to authenticate”.

Once I finished playing in Ubuntu, I clicked on the top menu Other->Reboot to Android, which opens a terminal windows asking to enter your user password into to complete the action, and within 30 to 40 seconds, I was back in Android.

Here’s the video with my tests. I’m sorry but the video quality is not very good,  especially in Ubuntu where it’s difficult, not to say impossible, to read the small text. I’ll have to find a better solution solution for next time, maybe getting an HDMI input recorder.

Some other quick comments. There’s no circuitry for power off in Ugoos UM3, so you’d have to disconnect the power to turn it off. If you do so in Ubuntu, the box will start Ubuntu next time, and in Android, it will boot to Android. I’ve also noticed that once Ubuntu enters screensaver mode (Black screen), there’s no way to get out of it, and a power cycle is needed.

That’s the status of the Android / Ubuntu image so far. Several bugs need to be addressed, VPU and GPU support in Linux, much more work is currently needed to have better Ubuntu image, although it can already be used to work with LibreOffice, and with caveats, to browse the web. Ugoos UM3 only has a 8GB eMMC flash, which means only 3GB is available in Android and Ubuntu, so you may consider using the Android or Ubuntu image instead of the dual boot image, if you need to install more applications.

If you plan to buy in quantities, you can do so by contacting the company via Ugoos UM3 product page. Since the device still in development, albeit almost ready, few sellers propose it for pre-order including Dealsprime for $109.99 including shipping, and on “Ugoosshop” for 129.95 Euros. It’s big brother, UGoos UT3, which also supports Android and Ubuntu, has been available for a month or so, and sells for about $140 on Amazon US, Chinavasion, GeekBuying, and others.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter