Ubuntu 11.10 Image for Hi802 / GK802 is Now Available for Download

About 2 weeks ago, Jasbir released an Ubuntu 11.10 image and installation instructions for GK802 and Hi802 mini PCs based on Freescale i.MX6. I could only find time to give it try yesterday and today. I’ll provide the steps I followed to install the image, and my quick first impressions of the stability and performance of this image.

Totem (1080p Video) + Firefox + es2gears + htop running in Ubuntu 11.10 on Hi802 (Click to Enlarge)
Totem (1080p Video) + Firefox + es2gears + htop running in Ubuntu 11.10 on Hi802 (Click to Enlarge)

Installation Instructions

I mainly followed the instructions provided by Jasbir, and run GParted to increased the partition size on my micro SD card. The image is for a 8 GB micro SD, but those instructions should work on 4GB SD card and greater, as the rootfs partition is only 3GB large.

  1. Download the Ubuntu 11.10 image, uboot, as well as the kernel image and modules in a Linux PC:
  2. Copy the image, uboot and the kernel to the micro SD card by typing the commands below:

    Replace /dev/<sd_device> by your actual device. In my case: /dev/sdc. N.B. My 8 GB micro SD is slightly smaller than Jasbir’s image so dd failed with “No space left on device“, but it’s not an issue, as there’s no critical data at the end of the image.
  3. Remove the micro SD from your PC, and reinsert it to automatically mount the rootfs. If it does not automatically mount, you may need to mount it manually (e.g. sudo mount -t vfat /dev/sdc1 /media/ubuntu)
  4. Copy the kernel modules to the rootfs. Replace <sd_mount_pt> by your micro SD mount point (e.g. /media/ubuntu):
  5. Unmount the microSD, and run
    gparted /dev/<sd_device> to resize the root filesystem, as shown below

    Ubuntu GK802 gparted

    GParted failed to run e2fsck properly for an unknown reason, possibly because my micro SD is smaller than the provided image, so I slightly reduced the size of the partition, and it worked OK.

  6. Exit GParted, remove the micro SD from your PC to insert it in the internal microSD slot of your  Hi802 / GK802 mini PC.

Running Ubuntu 11.10 in Hi802

Since this is a development release, and the boot may fail with your configuration, you’d better connect a USB to TTL board to your device to access the serial console. During my first boot, I got to the Ubuntu desktop on my HDMI display (720p), but my USB mouse or keyboard would not work. I’d get no messages (via dmesg) at all when I connected a USB hub, and upon connecting my mouse or keyboard directly in Hi802 USB port, I’d get the message below in the serial console:


rzk2 advised me to try another power supply on #imx6-dongle IRC. After my Droid Stick A2 5V/2A power supply, I tried a 5V/1.2A Nokia power supply, but the device would just keep rebooting, and finally I found another 5V/2A that make the device, my USB hub, mouse, keyboard and me happy 🙂

I could setup Wi-Fi very easily via Ubuntu user interface. As with other boards running Ubuntu + Unity from an SD card, the system is not super responsive but still (sort of) usable. To test the GPU and 2D/3D acceleration, I ran both es2gears and glmark2-es2.

es2gears renders at about 58 fps.

es2gears
EGL_VERSION = 1.4
vertex shader info:
fragment shader info:
info:
821 frames in 5.0 seconds = 164.069 FPS
818 frames in 5.1 seconds = 161.916 FPS
767 frames in 5.1 seconds = 149.893 FPS
511 frames in 5.0 seconds = 101.773 FPS
293 frames in 5.0 seconds = 58.495 FPS
292 frames in 5.0 seconds = 58.295 FPS
292 frames in 5.0 seconds = 58.272 FPS
292 frames in 5.0 seconds = 58.318 FPS
291 frames in 5.0 seconds = 58.107 FPS
293 frames in 5.0 seconds = 58.483 FPS
291 frames in 5.0 seconds = 58.142 FPS

and glmark2-es2 works, but gets a score between 12 and 14, which is quite lower than the score (54) I got on ODROID-X with Ubuntu 12.11 using the same resolution. A lower score was expected, but the difference is quite large, although I’m not sure whether it’s OK to compare glmark2-es2 results on Ubuntu 11.10 and 12.11.

glmark2-es2
=======================================================
glmark2 2012.03
=======================================================
OpenGL Information
GL_VENDOR: Vivante Corporation
GL_RENDERER: GC2000 core
GL_VERSION: OpenGL ES 2.0
=======================================================
[build] use-vbo=false: FPS: 31
[build] use-vbo=true: FPS: 30
[texture] texture-filter=nearest: FPS: 26
[texture] texture-filter=linear: FPS: 18
[texture] texture-filter=mipmap: FPS: 18
[shading] shading=gouraud: FPS: 19
[shading] shading=blinn-phong-inf: FPS: 12
[shading] shading=phong: FPS: 7
[bump] bump-render=high-poly: FPS: 6
[bump] bump-render=normals: FPS: 10
[bump] bump-render=height: FPS: 12
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 5
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 2
[pulsar] light=false:quads=5:texture=false: FPS: 12
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 14
[desktop] effect=shadow:windows=4: FPS: 0
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 10
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 7
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 7
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 14
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 6
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 7
[function] fragment-complexity=low:fragment-steps=5: FPS: 6
[function] fragment-complexity=medium:fragment-steps=5: FPS: 3
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 23
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 30
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 7
=======================================================
glmark2 Score: 12
=======================================================

In some cases, the HDMI display would just become black during 2D/3D testing for a short period of time (1 or 2 seconds).

I then tried video playback in Ubuntu, something I can’t do with any other boards or devices I own. I tried to play videos in Totem directly from a SAMBA share. Big Buck Bunny 480p plays just fine, but the 720p can’t play smoothly. So I copied Big Buck Bunny 1080p (~44 MB) to the micro SD. This took about 44 seconds (1MB/s), which means currently Wi-Fi performance is slower than in Android (1.42 MB/s). However, once I got the video in the micro SD, it could play just fine with low CPU usage.

I’ve performed a final quick test running Firefox, Totem (1080p video), es2gears, and htop at the same time (pictured above). Most of the time the system can manage this workload, but CPU usage is quite high (noticeably because of es2gears), and if you try to interact with Ubuntu while all those run, it’s just very sluggish. For example, if you take a screenshot with “Print Screen”, the pop-up window may take several seconds to appear, and video playback will be extremely choppy.  When I run all those programs at the same time, the system may also end up rebooting automatically.

Yet this is the first image that can boot properly on my HiAPAD Hi802, so this is good progress, and it shows good potential for this hardware. A faster micro SD, and/or replacing Unity with LXDE or XFCE desktop environment esshould greatly improve the responsiveness of the system.

29
Leave a Reply

avatar
29 Comment threads
0 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
14 Comment authors
PaulAenoCubGraham ToalManos Eskintzis Recent comment authors
  Subscribe  
newest oldest most voted
Notify of
Eli
Guest
Eli

Does it have hardware acceleration in XBMC?

Castaa
Guest

Nice tutorial. I would get a GK802 but the RK3188 sticks seem worth waiting for since they have double the RAM for running Linux.

Albert
Guest
Albert

My GK802 gets too hot when playing 1080p24fps or 1080p50fps videos. Within a minute of running HD video, iMX shuts down due to over temperature.

This h/w looks really powerful, I was considering using it as a ARM desktop.

shark
Guest
shark

Is it possilbe to get archlinuxarm working on gk802/hi802?

trackback

[…] it’s hackable and unbrickable with easy access to the serial console, full support for Linux with hardware video decoding and 2D/3D acceleration (work in progress), and Freescale has released proper software and hardware development resources […]

shark
Guest
shark

@cnxsoft
I tried, i even replace the /dev & /boot with linaro’s, however it does not boot either.

shark
Guest
shark

Thanks, but as the reply indicated, it would be nice to have the disk image as a starting point.

cnxsoft :
@shark
I’ve just come across a post where somebody did install Arch Linux ARM on the device. No detailed instructions, but at least some starting points: http://www.armtvtech.com/armtvtechforum/viewtopic.php?f=137&t=1562

Coskun Cetintas
Guest
Coskun Cetintas

When i try your method on ubuntu linux i can’t mount the sdcard and it’s seen unavaliable or unknown in gparted. dd process has not any errors, it’s completed without errors. But sdcard is unknown for all of programs. When i try to use win32diskimager, the sdcard is avaliable but uboot isn’t writing. What can i do?

Coskun Cetintas
Guest
Coskun Cetintas

@cnxsoft
I tried to remove and put back but it could not mount. But i don’t try to use fdisk -l command. I will try tonight. Thanks. I try always 16 GB Class 10 sdhc card. You think, the problem depends about this?

Patola
Guest
Patola

Why is this image using armel instead of armhf?

Coskun Cetintas
Guest
Coskun Cetintas

@cnxsoft
I tried “fdisk -l” command and seen in list but did’nt mount. Dd commands is harmed the sdcard anyway in ubuntu. Is the problem depends about ubuntu version?

trackback

[…] releasing a pretty good Ubuntu 11.10 image with both VPU and GPU acceleration for Freescale i.MX6 based HDMI dongles last month, Jasbir (aka jas-hacks) has released an Ubuntu […]

duc
Guest
duc

works great, out of the box. but i can’t change the display resolution, it is set fixed to 12080×[email protected]
how can i set the resolution to 1920×1200 or 1920×[email protected] ?

Manos Eskintzis
Guest

I have gk802 with a Toshiba Excperia 16Gb running ubuntu 11.10,i run the test and the result was way much deifferent from yours i dont know why can be the microsd card or i did something wrong?
=======================================================
glmark2 2012.03
=======================================================
OpenGL Information
GL_VENDOR: Vivante Corporation
GL_RENDERER: GC2000 core
GL_VERSION: OpenGL ES 2.0
….
glmark2 Score: 148
=======================================================
[copy paste from terminal]

EGL_VERSION = 1.4
vertex shader info:
fragment shader info:
info:
1438 frames in 5.0 seconds = 287.428 FPS
1464 frames in 5.0 seconds = 292.683 FPS
1461 frames in 5.0 seconds = 292.083 FPS
1467 frames in 5.0 seconds = 293.341 FPS
1468 frames in 5.0 seconds = 293.541 FPS
[copy paste from terminal]

Graham Toal
Guest
Graham Toal

Wow. This makes the GK802 a perfect platform for Xibo (http://xibo.org.uk/ – digital signage). I’d been looking at the RPi so far for this job but it doesn’t have the speed for the video display part…

Cub
Guest
Cub

I am also stuck trying to get the file system to mount. I have tried it many times on ubuntu with various options for the sd card ref (/dev/sdb, /dev/sdb1) also starting off with a fat32 partition before first dd image copy command. Does anyone the secret to get the mounting to work? I am using a 32GB card, could this somehow be the problem?

Aeno
Guest
Aeno

Does anyone know how to get the wireless networking to work. I’ve finally managed to get ubuntu running on the GK802, but the only thing I’m lacking is wireless connectivity.
But I must say I also had problems with the wireless connection running on Android.

Still, would appreciate if someone could share the steps to get it to work.

Paul
Guest
Paul

Thanks for providing the Ubuntu image. It is working well. I ran into a couple pitfalls. Others may wish to avoid these things, too.
– The Unity 3d desktop does not display. This prevents content and even menus from being displayed. This desktop environment takes lots of resources, so use Unity 2d (the default) instead. In an effort to reduce resources required, I started using Xfce the other day. It seems to work well.
– Ubuntu will ask you to upgrade to 12.x. This caused many issues and I had to reimage after the upgrade. Update did not cause any issues.
– Apps like Midori (instead of firefox) and claws (instead of thunderbird) help these little computers run better, too.

Thanks again, I am very happy with the GK802 and Ubuntu. IMHO, it is a big improvement over Andriod on the desktop.