HardKernel ODroid-X Review with Android 4.0.4
Following my ODroid-X unboxing and first boot post, I planned to review ODroid-X board with both Android and Ubuntu. However, I found out that an Ubuntu image will only be released later this week, so I’ll focus on Android review for today, and try Ubuntu once it becomes available.
The default firmware come with a few standards applications, and an ODROID app that:
- Provide links to developer resources
- Features a file explorer
- Has a WiFi section that show WiFi information such as signal strength and let you test the network performance
- Has a GPS section (useless for this board)
- Has a Sensor section, but there are none in ODROID-X.
- Has a camera section that let you show the camera input. It works with the module provided
- Has a others section with 3D compass test (not used for ODROID-X)
The Dev Tools application is also installed.
But there was not really enough apps for this review, and it only comes with SlideMe market which lacks some of the required apps. So I found a way to install Google Play:
- Download and uncompress http://goo.im/gapps/gapps-ics-20120429-signed.zip
- Connect ODROID-X microUSB port via a USB cable to your PC, and let the driver installation complete (I did not have to download anything in Windows XP)
- In a command prompt, go to android platform-tools directory and type:
adb remount adb push gapps-ics-20120429-signed\system /system adb reboot
Click on Google Play, complete the setup, and you should now be able to install most applications available on Google Play. One problem though… It’s not rooted, although I’m not sure if this happened with the Google Play install or not. But it’s easy to unroot the device:
- Download http://www.unlockroot.com/
- Click on Root and select ODROID-X.
- It should say it’s already rooted, but proceed anyway to (re-)root your device
First, let’s check the “About Tablet” tab:
Since I’ve got one of the fastest ARM platform available right now, I had to run some benchmarks:
ODroid-X Antutu score is 11949, very close to Samsung Galaxy S3 which had to be expected since it’s the same processor. Note that I had some problems during 2D graphics test where the screen re-sized itself and the error message “Unfortunately system UI has stopped” showed up a few times. The highest Antutu score is 15392 using a Galaxy S3 overclocked at 1.8 GHz. If you feel like it, you could try to overclock the board to 1.8 GHz (it probably voids the warranty…) and run Linaro Android to beat that score with ODroid-X.
ODroid-X quadrant score is 4176, and is beaten by HTC One X. This does not seem right because others reports Galaxy S3 got 5520 on the same benchmark. I got those “Unfortunately system UI has stopped” during the benchmark which may explain the relatively low score.
Quadrant Info section indicates the UI resolution is 1360×720, and the total memory 657564 KB which makes a lot of memory reserved for the GPU and other things.
ODroid-X is not exactly supposed to be a media player, but I’m sure many of you are interested in this. AFAIK only H.264 hardware codec is supported (for cost savings on license fees), so other video codecs must be decoded by software. The good news is that MX Player support multicore software decoding so it can fully take advantage all the 4 cores available on Exynos 4412. I found out it could play most videos format/containers @ 1080p smoothly over the network (SAMBA share) using software decoding. I used Linaro Sample Media and some others for testing, and I only had problems to play WMV (1080p/8600kbps) and WebM (1080p/7800kbps) videos which could not play smoothly and with frequent audio cuts. The same videos @ 720p without any issues. FYI. Hardkernel tested video playback on SDHC and XBMC for Android which is currently unusable since it does not react to mouse clicks.
I don’t feel any different between using this platform or a low-end system based on Cortex A8 + Mali-400 SoCs when using the Android interface and most applications, however when it come to web browsing, it feel much faster and can handle heavier sites almost like a Desktop PC. I’ve aslo tried Facebook with a Flash game (Pet Society). It felt a bit sluggish, but still usable which was not the case with low-end systems.
3D games seems to work very well on the platform. I’ve not tried myself, but Hardkernel did with a XBox controller. You know to relax after coding on the platform.
Now that Ive run some benchmarks, tried some Android applications and showed some games on ODroid-X, I’d better try the peripherals on the system. I already tried Wi-Fi, serial port and USB mouse & keyboard yesterday, so I’ve tested the other modules / connectors today:
- BlueTooth – Using the USB dongle provided by Hardkernel, I could pair ODroid-X development with my mobile phone and exchange files without any issues.
- Camera – I could use the MIPI camera module, but it would hang while pressing the “Shot” button in the Camera application, so instead, I’ve taken a screenshot (shown below). This shot is taken in low light conditions.
The camera is connected directly on the PCB, and if you just put your board on the table it will point to the ceiling, so it would be better with some kind of extension cable.
- HDMI – I actually used the mini HDMI port during the complete Android testing, as it is more convenient than the LCD panel in my limited office space. My TV had some problem detecting the HDMI signal when connect in one HDMI/DVI port, maybe due to bad contact in my TV connector (The display went on and off), but there was no issue once I switch to another HDMI connector.
Unfortunately, I wasn’t able to give Ethernet a try, because there seems to be an hardware failure on my board with Ethernet (No Link) and the adjacent 4 USB ports (Power but no device detected) failing to work properly. The first day those 4 USB port worked OK although I got a lot of USB warning messages in the serial console. If something similar happens to you, you could try this potential solution (which did not work for me). I could not find other people complaining about hardware issues on the forum, so this is probably an isolated case.
I won’t try to use the SD card today, as I’ll do that once the Ubuntu image is available.
For development purpose, Hardkernel provides the Exynos 4412 Android 4.0.4 BSP (2 GB) which contains u-boot, the Linux kernel and Android source code, which means in theory it’s possible to try Ubuntu by ourselves, but since Hardkernel is hard-at-work to release an Ubuntu 12.04 image this week, let’s not do that. There is all the documentation and files you need for development at http://dev.odroid.com/projects/odroid-xq/. This is still in construction, but already looks quite detailed.
The company provides the following schematics:
- ODROID-X Baseboard
- USB-UART Board
- LCD Module Board
- eMMC Module Board
Which can be downloaded online in PDF format.
The schematics of Exynos 4412 CPU Module is also available, but you have to send ODROID-X serial number which is printed on a sticker on the back of the board to [email protected] with ODROID-X serial number. I did just that, and received the CPU module schematics also in PDF format in less than 30 minutes.
You can get support on ODroid-X forums. There seems to be a lot of interests and questions ODroid-X and Hardkernel appears to reply pretty fast to developers issues.
During my day testing the platform, I found some minor issues described above, but Android 4.0.4 for ODroid-X is still alpha, so some of the problems I and others found will certainly be fixed as the platform matures. I really like this board both in terms of features and costs, and the only thing that I find missing (for me) is a VGA output.
PS: I’ve just seen Hardkernel released a Ubuntu 12.04 SD card image based on Kernel 3.6 about 1 hour ago, I’ll try that later this week.