Archive

Posts Tagged ‘odroid-x’

Top 10 Posts of 2013 and Stats on CNXSoft Blog

December 31st, 2013 2 comments

This is the last day of the year, and just like in 2012, I’ll look back on the main trends of this year,  post a list of the top 10 posts of 2013 on cnx-software.com, and add some fun stats about the site and my visitors. 2013 has been the year of quad core media players and mini PCs, especially those based on Rockchip RK3188, XBMC is now featured in many Android STBs, “big.LITTLE” and “Octa-core” have been the buzz words on the application processor front, Google has entered the HDMI TV sticks market with the ChromeCast, and is competing with Miracast / DLNA TV dongles, we’ve gotten more and more low cost Linux development boards, crowdfunding has almost gone mainstream, and the Internet of things has started to take off thanks to new technologies such as Bluetooth Low Energy.

I’ve compiled the list using data from Google Analytics, filtered post from 2013, and sorted them by decreasing number of page views. Here are the top 10 posts of 2013:

  1. GPUs Comparison: ARM Mali vs Vivante GCxxx vs PowerVR SGX vs Nvidia Geforce ULP (January 2013) – You’ll find plenty of SoC comparison on the Internet, but GPU are sort of a mystery, and the post shows it’s rather complex to compare the different solutions. Nevertheless, many people were interested in knowing the differences between Mali, PowerVR, Vivante… GPUs, especially with regards to performance, and this post was clearly the most popular of the year.
  2. Matricom G-Box Midnight MX2 Android TV Box Review (May 2013) – Matricom G-Box Midnight MX2 was one of the best XBMC Android devices I tested at the time, and also generated some heated discussions about XBMC and open source.
  3. Installing Android Studio IDE in Ubuntu – Hello World Application (May 2013) – Speed matters. As I was one of the first to explain how to install the new Android Studio IDE in Ubuntu, the post got linked from several sources and became relatively popular.
  4. Ubuntu 12.04 Now Boots on Rockchip RK3188 mini PCs (T428, MK908, Rikomagic MK802 IV…) (June 2013) – RK3188 based Android mini PCs became popular in 2013, because of the performance and price, but quite a few people were, and are still, interested in finding out how to install Linux distributions, and in particular, Ubuntu on their device.
  5. $32 iPush Wi-Fi DLNA / Miracast Adapter for Android (May 2013) – iPush was one of the first DLNA / Miracast / Airplay TV dongle for a reasonable price. It turned out there are several versions of the device not all of them supporting Miracast. The post got a traffic spike when ChromeCast was announced, as some people mentioned the iPush as an alternative.
  6. How to Run Android Apps in Linux with AndroVM (March 2013) – Android’s got plenty of app, and I though it would be nice is there was an easy way to run then in a Linux desktop. Luckily, AndroVM, now GenyMotion, made it relatively easily.
  7. BeagleBone Black vs Raspberry Pi – Features and Price Comparison (April 2013) – In 2012, the Raspberry Pi disrupted the hobbyist board market with its $35 price tag. But in 2013, it got some tough competition will plenty of more powerful boards selling for less than $60. One of them is the BeagleBone Black selling for $45, and AFAIK, the most popular among “alternatives”. Since the board has similar price, people wanted to know which one was good for them. To date, 2.3 million Raspberry Pi boards have been sold, against at least 100,000 BeagleBone Black.
  8. Quad Cores SoC Comparison: Rockchip RK3188 vs Exynos 4412 vs Tegra 3 (April 2013) -Comparisons are often popular, and this one with the top three quad core processors at the beginning of 2013 was too.
  9. How to Root Rockchip RK3188 mini PCs (March 2013) – As Rockchip RK3188 mini PCs become popular, people wanted to know how to root them.
  10. Ubuntu Linaro 12.11 with 2D/3D Mali-400 GPU Acceleration on ODROID-X Development Board (February 2013) – It can be a pain to get a working Linux distribution with GPU acceleration on ARM based hardware, so when I tried Hardkernel image on ODROID-X, and found out it was actually pretty good, it generated some buzz.

Some posts from 2012 were still popular and would have made it to the list including posts related to WM8850-MID tablet, Cubieboard Getting Started Guide, and 84MB Raspberry Pi minimal image.

Now let’s see some stats for cnx-software.

CNXSoft_Traffic_2013

The site averaged about 300,000 page views per month, although as expected, two months holiday did not really help with traffic. Google Analytics reports a total of 2,239,006 visits, 1,306,200 unique visitors, and 3,579,860 page views for the year.

About half of the traffic came from search engines, mainly Google, with the remaining halves from over 4,000 other websites. The top 10 search terms and referral are shown in the table below:

Top 10 Keywords Top 10 Referrals
wm8850-mid scoop.it
wm8850 linux-sunxi.org
cubieboard facebook.com
mid tablet review plus.url.google.com
wm8850-mid firmware raspbian.org
miracast adapter liliputing.com
mtk6572 4pda.ru
miracast dongle t.co
mid android tablet review hardware.slashdot.org
minix neo x7 forum.xbmc.org

Let’s find out more about my visitors now.

CNX Software is quite cosmopolitan. US and UK visitors represent about 22%, with the rest of the traffic coming from countries where English may not be the first language.

CNXSoft_2013_Visitors

Most people still use Windows, but Linux still has a nice 18% traffic share (25.5% including Android and Chrome OS) which is well above average. Chrome is ahead a Firefox, with Internet Explorer far behind.

CNXSoft_OS_BrowserSite Speed figure are now available in GA, so for fun I’ve checked which countries, with over 1,000 page views per year, had the fastest and slowest average page load times on this blog.

Fastest (Left) and Slowest (Right) Average Page Load Times

Fastest (Left) and Slowest (Right) Average Page Load Times

You can consider yourself a lucky one if you live in Switzerland, Norway, and New Zealand, as pages load in less of 5 seconds average, but if you live in the Philippines, and especially in China and Nigeria, you may not be so lucky as page load times average over 60 seconds.

That’s all for today, and 2013, so I’ll join this year gadgets and boards (pictured below) to wish you a very happy and prosperous new year 2014, which promise to be interesting with the first ARM 64-bit based consumer devices, Chinese big.LITTLE processors coming to market, cheaper and more powerful devices, the Internet of things hopefully becoming mainstream, new mobile operating systems such as Tizen, Firefos OS possibly gaining momentum, and Linux with GPU acceleration for all thanks to Ubuntu 14.04 (and libhybris).
Click to Enlarge

UDOO QUAD vs BeagleBone Black vs Wandboard Dual vs ODROID-X2 vs Raspberry Pi

May 27th, 2013 5 comments

UDOO QUAD is a development board featuring both Freescale i.MX 6Quad and an Atmel SAM3 Cortex M3 MCU, that’s currently having a very successful campaign on Kickstarter, as the total amount pledged is now close to $500,000 US. UDOO decided to put a comparison table against four other ARM Linux boards they consider their main competitors: the BeagleBone Black for its numerous I/O options, Wandboard Dual, also a Freescale i.MX6 powered board, the ODROID X2 for its powerful Exynos 4412 processor, and Raspberry Pi model B which is ubiquitous. The Cubieboard board would also have been an interesting addition, but they did not include it.

Low Cost Development Boards Comparison Table (Click to Enlarge)

Low Cost Development Boards Comparison Table (Click to Enlarge)

As you would have guessed the green parts in the tablet shows the winner for each features according to UDOO team. These 5 boards vary greatly in terms of price, and since this is not included in the table above, I’ll mention  the price of the boards (excluding shipping, tax, and accessories):

  • UDOO QUAD – $129
  • BeagleBone Black – $45
  • Wandboard Dual – $99
  • ODROID X2 – $135
  • Raspberry Pi – $35

Raspberry Pi and BeagleBone Black are in a different price range compared to the other three range, with the Raspberry Pi getting the crown for the cheapest board, but as usual you have to think about total cost which is project dependent. When it comes to pure processing power, ODROID X2 is probably the one you want, especially it comes with 2GB memory. If size matters to you, BeagleBone Black is the smallest board in the list, just a bit smaller than the Raspberry Pi. UDOO QUAD is the only board with SATA in the list, although Cubieboard would have been a contender here if it had been included. The Freescale boards (Udoo and Wandboard) have better connectivity options with Gigabit Ethernet, and built-in Wi-Fi, but Wandboard is the only board with built-in Bluetooth. When it comes to digital and analog I/Os, UDOO QUAD seems to outperform all other boards, even the BeagleBone Black which comes a close second.

Other useful fields would have been internal storage (UDOO as none), hardware video decoding capabilities, OS support, power consumption, etc,… but this is a never ending story.

Ubuntu Linaro 12.11 with 2D/3D Mali-400 GPU Acceleration on ODROID-X Development Board

February 19th, 2013 36 comments

A few days ago, Hardkernel released the first version of Ubuntu 12.11 (Linaro) with Mali-400 GPU support for their ODROID boards (ODROID-X/X2, ODROID-U/U2). This is still WIP (Work in Progress), but this is one of the few boards together with Pandaboard, Origen and Snowball that can support 2D/3D GPU acceleration in Ubuntu Quantal. Since I have an ODROID-X development board, I decided to give it a try. There are different ways to install it. I chose the way that is most convenient for me (LCD display instead of HDMI), and likely to yield more performance (eMMC instead of SD Card). The current installation instructions to eMMC are extremely cumbersome and you have to go through 5 main steps:

  1. Install Android (yes, seriously) in the eMMC
  2. Install Ubuntu in the SD Card
  3. Install Ubuntu to the eMMC
  4. Upgrade Ubuntu to the latest version
  5. Install the Mali drivers

In this post I’m going to go through all those steps, and do some testing for eMMC and 2D/3D performance. If you just want to boot Ubuntu from SD, simply skip steps 1 and 3. For eMMC installation, I followed the “eMMC Ubuntu” guide on odroid forums, as well as the instructions on the release post to install Mali drivers, and enable 2D/3D acceleration in Ubuntu. Similar instructions are also available for ODROID-X2 and ODROID-U2.

You’ll need an 8GB SD Card or greater to complete all the steps.

Installing Android to ODROID-X

  • Insert the SD card in a Linux PC, and find your SD card device:

  • Download & extract the Android Installer, and write it to your SD card with dd or dd.sh script:

If you use Windows, do it with Win32DiskImager. Back in the times when I still used Windows and Win32DiskImager, I never had problems myself, but some people apparently have, and Hardkernel released an improved version of Win32DiskImager to verify the copy.

Then insert the SD card in your ODroid-X board, connect a Jumper on SD/MMC connector (JP2) to boot from SD card, and install the latest version of Android. During installation I had no display on the 10″ LCD display, and the board simply powered itself off after a while. Not sure this is normal, but after removing the Jumper, I could boot to Android (3-Jan-2013 build) from the eMMC.

Installing Ubuntu 12.11 for ODROID-X to the SD card

Now take the SD card back to your Linux computer to copy the Ubuntu image:

  • For LCD display:

  • For HDMI Display:

I’ll carry on with the LCD image since this is what I use, but the step for HDMI are the same, just replace the filename:

Inset the SD card in ODroid-X board, insert the Jumper in JP2 to boot from SD card to verify Ubuntu 12.10 boots correctly.

Install Ubuntu to ODROID-X eMMC Module

Once you’ve verified Ubuntu boots correctly from the SD Card, put the SD card back in your PC and copy odroidx_20130128-linaro-ubuntu-desktop_SD_with_LCD.img.xz to the rootfs. In my PC running Ubuntu 12.04, it will automount it to /media/rootfs:

Once umount is successfully (which means the data is fully written to the SD card), you can insert it back into your ODroid-X board to install Ubuntu 12.10 to your eMMC. First locate your eMMC device with:

The eMMC is the device with with boot0/boot1, as well as p1/p2/p3/p4. In my case, it’s mmcblk0. Once you know this, copy Ubuntu to the eMMC by using the following command in a terminal:

Once sync is complete, power off the board, remove the Jumper on JP2, and start Ubuntu.

Ubuntu Quantal in ODROID-X Board

Ubuntu Quantal in ODROID-X Board

Upgrading Ubuntu (15 Feb)

Before we can use Mali-400MP4 GPU in Ubuntu, you must install an update for Ubuntu (Feb 15, 2013):

If you are using the Wi-Fi module from Hardkernel (and probably others), run those 2 commands:

Installing Mali Drivers for ODROID-X Board

Mali-400MP4 drivers are not included in the image, most probably for legal reasons, and you have to accept an End-User-License-Agreement (EULA) during installation (dkpg). Let’s do this:

If you are outputting to an HDMI monitor, the installation should be complete at this stage. In my case I could only the 4 tux and nothing else showed up on the display. I could however access the command line via the serial console. After further reading, I found out I had to modify /usr/share/X11/xorg.conf.d/99-hkl_mali.conf to make it work with the LCD display as follows:

Ubuntu Linaro 12.11 Performance in ODROID-X

The first thing I’ve noticed is that Ubuntu feel snappy with this hardware, at least snappier than in my Atom netbook running Ubuntu 12.04, and it’s the first time I could see myself using this platform as a desktop replacement. Booting from power off takes 15 to 20 seconds. There are still some issues though. Once of them is that software-center is not working when run from the eMMC (SD card is OK). Even though this post is mainly about GPU support, I’ve compared startup times from eMMC and SD card with Libreoffice Writer, Software Center, and Firefox

Libreoffice Writer was not pre-installed, so I installed it first:

Firefox Software Center Libreoffice Writer
SD Card 5s 18s 11s
eMMC 3s Does not start 5s

Each program was started after a reboot. We can notice there’s a significant advantage of using eMMC instead of SD card when it comes to startup time.

I’ve also done several 2D/3D tests.

I started with es2gears, which comes in the provided Ubuntu image:

es2gears
EGL_VERSION = 1.4 Linux-r3p2-01rel0
vertex shader info:
fragment shader info:
info:
483 frames in 5.0 seconds = 96.561 FPS
427 frames in 5.0 seconds = 85.230 FPS
395 frames in 5.0 seconds = 78.827 FPS
394 frames in 5.0 seconds = 78.580 FPS
379 frames in 5.0 seconds = 75.664 FPS
373 frames in 5.0 seconds = 74.570 FPS
363 frames in 5.0 seconds = 72.585 FPS
352 frames in 5.0 seconds = 70.245 FPS
332 frames in 5.0 seconds = 66.387 FPS
317 frames in 5.0 seconds = 63.273 FPS
297 frames in 5.0 seconds = 59.341 FPS
298 frames in 5.0 seconds = 59.469 FPS
279 frames in 5.0 seconds = 55.722 FPS
280 frames in 5.0 seconds = 55.855 FPS
263 frames in 5.0 seconds = 52.505 FPS
260 frames in 5.0 seconds = 51.875 FPS
251 frames in 5.0 seconds = 50.090 FPS
237 frames in 5.0 seconds = 47.230 FPS

It appears to work, but the window background is transparent, and although the frame rate starts at 96.651, it just decreases which each iteration… Not sure what that means…

I’ve also installed glmark2-es2

sudo apt-get install glmark2-es2

glmark2-es2 2D/3D GPU Benchmark in ODROID-X Development Board

glmark2-es2 2D/3D GPU Benchmark in ODROID-X Development Board

run it, and got a score of 54:

linaro@linaro-ubuntu-desktop:~$ glmark2-es2
=======================================================
glmark2 2012.08
=======================================================
OpenGL Information
GL_VENDOR:     ARM
GL_RENDERER:   Mali-400 MP
GL_VERSION:    OpenGL ES 2.0
=======================================================
[build] use-vbo=false: FPS: 52 FrameTime: 19.231 ms
[build] use-vbo=true: FPS: 54 FrameTime: 18.519 ms
[texture] texture-filter=nearest: FPS: 57 FrameTime: 17.544 ms
[texture] texture-filter=linear: FPS: 57 FrameTime: 17.544 ms
[texture] texture-filter=mipmap: FPS: 57 FrameTime: 17.544 ms
[shading] shading=gouraud: FPS: 57 FrameTime: 17.544 ms
[shading] shading=blinn-phong-inf: FPS: 57 FrameTime: 17.544 ms
[shading] shading=phong: FPS: 54 FrameTime: 18.519 ms
[bump] bump-render=high-poly: FPS: 46 FrameTime: 21.739 ms
[bump] bump-render=normals: FPS: 58 FrameTime: 17.241 ms
[bump] bump-render=height: FPS: 57 FrameTime: 17.544 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 56 FrameTime: 17.857 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 56 FrameTime: 17.857 ms
[pulsar] light=false:quads=5:texture=false: FPS: 58 FrameTime: 17.241 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 40 FrameTime: 25.000 ms
[desktop] effect=shadow:windows=4: FPS: 53 FrameTime: 18.868 ms
Error: Requested MapBuffer VBO update method but GL_OES_mapbuffer is not supported!
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: Unsupported
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 37 FrameTime: 27.027 ms
Error: Requested MapBuffer VBO update method but GL_OES_mapbuffer is not supported!
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: Unsupported
[ideas] speed=duration: FPS: 53 FrameTime: 18.868 ms
[jellyfish] <default>: FPS: 56 FrameTime: 17.857 ms
Error: SceneTerrain requires Vertex Texture Fetch support, but GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS is 0
[terrain] <default>: Unsupported
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 57 FrameTime: 17.544 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 57 FrameTime: 17.544 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 57 FrameTime: 17.544 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 57 FrameTime: 17.544 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 57 FrameTime: 17.544 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 57 FrameTime: 17.544 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 58 FrameTime: 17.241 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 57 FrameTime: 17.544 ms
=======================================================
glmark2 Score: 54
=======================================================

Some test failed. I’m not sure if it’s because those are not implemented yet, or simply not supported by Mali-400. One interesting point is that ODROID-U2 users reports that Xubuntu is twice as fast as Ubuntu in glmark2-es2, and the culprits appear to be Unity and Compiz.

I’ve done another test to check whether WebGL would work, and I’ve got between 0 to 1 fps on both Firefox and Chromium with WebGL Aquarium. A final comment, since many people still seem to be confused with GPU and video decoding. The Mali-400 does not handle video decoding, this is done normally done by the Video Processing Unit (VPU), and AFAIK this is not currently supported in Linux on ODROID boards.

Running Ubuntu in Android with ODROID-X Development Board

December 13th, 2012 4 comments

I’ve had several people asking me about running Linux on Android in the last few months, but I did not look into it into details, because I thought we would just be able to run server apps. That is until Rohith left a comment on CNX Software Facebook timeline,  that it’s possible to run Linux in Android, and access the user interface via VNC (sort of simple, but I did not think of it). You probably need at least 1GB of memory and a multi-core processor to run this sort of setup correctly, so I finally decided to give it a try by running Ubuntu 12.04 with Unity interface in ODROID-X development board.

I mainly followed the instructions available at http://linuxonandroid.org/ and inside the Android app. Most of the steps I followed can also be replicated on other rooted Android hardware platforms. Apart from Ubuntu 10.04 & 12.04, you can also install Debian and Backtrack distributions.

Updating Android, rooting and installing the Play Store on ODROID-X

Since I hadn’t used the board since August, I decided to update Android to the latest version. This step is optional, and if you’re using another device, you can completely skip this section. I’m using an eMMC with my board, if you want to boot from SD card, following the instructions on hardkernel forums.

  1. Download Android 4.0 Alpha 3.5 (ODROID-X_eMMC_image_14-Nov-2012.zip) and extract it
  2. Enter into fastboot mode.
    If you have any, remove your SD-card and make sure JP2 is unconnected.

    • If you have the USB-UART kit, press any key within 3 seconds in your terminal software after power on, and enter ‘fastboot’ in u-boot prompt.
    • If you don’t have the USB-UART kit, press & hold the “user” button (SW3) of ODROID-X board and power on, and after 6~7 seconds, release the button.
  3. Connect your board to the host PC with a micro-USB cable.
  4. If you don’t have it, install fastboot on your host PC . (Instructions)
  5. Copy the kernel, ramdisk and system images to the eMMC module:
  6. Reboot and let Android perform the update

In order to run Linux in Android, you’ll need a rooted device and the Play Store app to install relevant applications.

Due to legal reasons, Hardkernel can’t install Google Play Store in the image they provide, but they can provide instructions to do so:

  1. Download and extract gapps-ics-20120429-signed.zip
  2. Copy the file to the /system directory
  3. Reboot the system to complete the installation

To root ODROID-X board, download unlockroot utility and follow the instructions (See ODROID-X review for details).

Setting Up Android to Run Ubuntu

This is where the instructions to prepare your rooted Android system to run Ubuntu or another Linux distribution start.

  1. Install Complete Linux Installer from Google Play.
  2. Start the application, click on Install Guides, and select your OS (e.g. Ubuntu 12)
  3. Follow the instructions:
    How to install Ubuntu for Android

    1. Download one of the Ubuntu images via http or bittorrent. There are 3 images:
      • Core Ubuntu Image – ~200MB to download and 750MB once extracted. It includes the basics without GUI.
      • Small Ubuntu Image – ~400MB to download and 2GB once extracted. It includes LXDE desktop
      • Large Ubuntu Image – ~1.3GB to download and 3.5GB once extracted. This image features the Unity interface as well as a range of other programs such as Firefox and LibreOffice

      However, the http link did not seem to work in Android, and the current version of Android ofr ODROID-X is known to hang during p2p downloads, so I decided to download the “Large Ubuntu Image” (Torrent or http) on my PC.

    2. Install the Android VNCViewer App.
    3. Install the Android Terminal Emulator App.
  4. Extract the downloaded image, can copy the 2 files (ubuntu.img and ubuntu.img.md5) to a directory (e.g. ubuntu) in the eMMC or a fast SD card.

Running Ubuntu in Android

We’ve now got all the required components and are ready to run Ubuntu in Android.

  1. Go back to Complete Linux Installer main menu, click on Launch,  and if the path is OK, you can just click on Start. If you run from SD card in ODROID-X, you’ll need to create a new config or edit the image path to /mnt/ext_sd/ubuntu/ubuntu.img.
  2. As you click on Start, the app will launch the Android Terminal, and for the very first boot, a script will check the image checksum (it will take a while), ask you to provide a password for Ubuntu user, ask if you want to start VNC and SSH server, request the size screen (1360×720 in my case), and finally ask if you want to save the settings, before entering the Linux shell. At this point, you are already using Ubuntu.
  3. Start VNC Viewer, enter the connection nickname, password, address (localhost), port (5900) and username (ubuntu). For better looking graphics, I chose 24-bit color depth (4 bpp).
  4. Click Connect, wait for the Ubuntu to show up and start a few applications.

Ubuntu on Android (Click to Enlarge)

At first, I ran Ubuntu from a cheap SD Card, and the desktop was rather sluggish, but I still decided to launch Libre Office 3 Writer… and it took over 5 minutes! So I decided to copy the Ubuntu image to the eMMC module. Ubuntu become more responsive, and Libre Office 3 Writer launched within 20 to 45 seconds the few times I tested (after “reboot’ each time).

You can watch the video below to see the step required to start (and stop) Ubuntu in Android, and assess the performance in ODROID-X board.

This method does not offer the great integration or performance that would be available with Canonical’s Ubuntu for Android, but it’s still usable as long as you use a fast storage device, and I can imagine this being useful for people who need to access application not available on Android, such as Libre Office for Android, and edit office files from their phones when they don’t have access to a computer.

$69 ODROID-U & $89 ODROID-U2 Exynos 4412 Development Boards

November 30th, 2012 25 comments

Hardkernel has just announced 2 tiny quad core development boards based on Exynos 4412 @ 1.4 GHz (as used in Samsung Galaxy S3) and Exynos 4412 Prime @ 1.7 GHz (as used in Samsung Galaxy Note 2) called respectively ODROID-U and ODROID-U2. The other difference is the U version comes with 1 GB RAM, and the U2 version with 2 GB RAM.

Exynos 4412 mini development board

ODROID-U Development Board Compared to a Credit Card

Here are the specification the ODROID-U and ODROID-U2 boards:

  • Processor – Samsung Exynos4412 @ 1.4 GHz (ODROID-U) or Exynos 4412 Prime @ 1.7 Ghz (ODROID-U2), which can be overclocked respectively to 1.8 GHz and 2 GHz.
  • GPU – Mali-400 clocked at 400MHz (ODROID-U) or 440MHz (ODROID-U2), which can be overclocked respectively to 533 and 633 MHz.
  • System Memory – 1GB LPDDR2 DRAM @ 800MHz (ODROID-U) or  2GB @ 880MHz (ODROID-U2)
  • Storage – microSD socket, eMMC connector
  • USB – 2x USB 2.0 Host ports, 1x USB 2.0 device for ADB/mass storage
  • Ethernet – 10/100Mbps (LAN9730)
  • Video Output – micro HDMI
  • Audio Output – 3.5mm Jack
  • Audio Input – Digital Microphone (ODROID-U2 only)
  • System Console – UART (1.8Volt)
  • DC Power – 5V/2A
  • PCB Dimension – 48 x 52mm
  • Heat Sink – 56 x 59 x 60mm

ODROID-U Block Diagram

As with the ODROID-X, Hardkernel will provide Android Jelly Bean and Ubuntu images and source code. Schematics will also be made available but only on the 31st of January 2013.

As you can see from the picture above, ODROID-U(2) boards will be shipped with an aluminum heatsink that will also serve as a case for the board. Most of ODROID-X modules (See unboxing) will be available for the platforms excluding LCD screen and Camera module which are not available for the new platform. Watch the video below for a tour of the board, accessories and see what you can do in Ubuntu (web browsing in Firefox, printing in Libreoffice…).

Hardkernel also announced further details about ODROID-X2 board (same as ODROID-X board but with Exynos 4412 prime and 2 GB RAM) that will be sold for $135 (instead of $149 previously announced) and be available on the 10th of December 2012.

ODROID-U & ODROID-U2 can be pre-ordered now for respectively $69 and $89 + $30 for worldwide shipping, and shipping is expected to start on Jan. 16, 2013 and Dec. 21, 2012. That’s really good value for quad-core development boards, and it looks like I might be able to review ODROID-U2 soon…

$149 Hardkernel ODroid-X2 Development Board with Exynos 4412 @ 1.7 GHz and 2 GB RAM

November 1st, 2012 4 comments

You’ve probably heard about the ODROID-X development board announced in July by Hardkernel. They now have an updated version called ODroid-X2 with Samsung Exynos 4412 clocked at 1.7 GHz (vs 1.4 GHz) and 2 GB RAM (vs 1 GB RAM for the first version). They also boosted the Mali 400 clock speed from 400 MHz to 533 MHz.

Apart from being a good mobile development platform, the 2 GB RAM could make the board a pretty good native ARM build machine under Ubuntu, as I’ve read 1 GB RAM is not always enough at link stage (e.g. for Debian packages, sorry I can’t find the link), unless you use swap which tremendously slows things down.

The rest of the board seems identical and it just looks the same as the first version. Charbax shot a video of Hardkernel ODroid-X2 development board at ARM Techcon 2012:

ODroid-X2 will cost $149 (ODroid-X costs $129) and be available at the end of November.

XBMC For Android on ODroid-X Development Board (Video)

August 14th, 2012 1 comment

I’ve tried one the latest nightly builds for XBMC on Android on the ODroid-X development board based on Exynos 4412 quad core Cortex A9 processor, and more exactly that file. Currently XBMC only supports 2 cores, so it’s still not optimized for this platform, but there has been a lot of progress since last month, when I tried XBMC on the Mele A1000, and it appears to be fairly stable.

Video Playback on XBMC for Android (Click to Enlarge)

The UI is very smooth (about 55 fps) and responsive on the ODroid-X  board. 1080p video playback is not perfect yet, but once XBMC can make use of four cores, it should be possible to handle 1080p software video decoding. Most of the things I tried work almost perfectly: video playback, picture display, audio playback, weather… There are still some bugs however, such as the lack of timezone support as you can see on the picture above, and the plugins I tried, namely YouTube and Al Jazeera, failed to work. I also had some problem to get rid off the OSD bar while playing video, but it might be because I don’t know where to click. or position the cursor. Videos are played and pictures are displayed from a Windows Share (SAMBA/CIFS), and I accessed audio files via uPnP. Enjoy!

Ubuntu 12.04 on ODroid-X Development Board

August 8th, 2012 18 comments

Yesterday, Hardkernel released the first version of Ubuntu for ODroid-X development board based on Linux 3.6-rc1 and Linaro Ubuntu Desktop 12.07.

This is still early work, but here’s the current status:

  • Linux Kernel 3.6-rc1 with gcc 4.7.1 Linaro toolchain
  • SMP driven Quad-Core processing
  • PMIC device driver
  • USB 2.0 High-speed Host driver for Exynos-4412 HSIC interface
  • Ethernet + USB Hub device driver
  • LCD display driver
  • HDMI display driver (Very early version and it may have HDMI 1.4a compatibility issues with some monitors)

To do:

  • Audio codec driver
  • eMMC device driver
  • Clock control driver
  • 3D HW-GPU X11 driver (This may need couple of months)
  • Power-off support
  • WiFi module is not working with Ubuntu GUI. Hardkernel Wi-Fi module is not working due to missing driver

There are 2 images: one for LCD display kits, one for HDMI output that can be downloaded via:

Once the download complete, uncompress the image and copy on a 8GB SD card or greater as follows:

where X is the letter of your SD card device on your system. If you’re using a 8GB SD card, there might be some slight differences in size, and you could see the following message:

If you still try to boot Ubuntu with this SD card, the boot will miserably fail to mount the rootfs:

Run the following command to fix and resize the rootfs partition:

Now you’re ready to insert the SD card in the board. Make sure the Jumper to boot from SD card is inserted and start the board. After slightly over 1 minute the Ubuntu desktop should appear.

Linaro Ubuntu on ODroid-X

Boot time would be greatly reduced with initramfs support and a  Class 4 or 10 SD card. I’m using a cheap SD card and the system response is not that great at the moment, although it’s still usable. Hardkernel Wi-Fi module is using Ralink RT5370 chipset, and the driver was not included in this image. I’ve built the driver successfully, but memory allocation error at load time prevent it from working correctly. Without network, I’ve decided not to review Ubuntu just yet.

If you want to customize the kernel, Hardkernel made it available on github. If you don’t have it already installed the Linaro cross-toolchain in Ubuntu:

For other distributions, you can download the latest gcc-linaro binary image, and uncompress it to your system

Now you can retrieve the code and build it:

To copy arch/arm/boot/zImage to your SD-Card, use the following command in your host PC:

and copy the modules to the rootfs.