Home Wiki > HCL:A10-OLinuXino-LIME
Sign up | Login

HCL:A10-OLinuXino-LIME

tagline: From openSUSE

The A10-OLinuXino-LIME is a very compact (84x60mm) Allwinner A10 based device similar to Raspberry Pi. It is manufactured and sold by Olimex.

Technical Data

  • Allwinner A10 Cortex-A8 processor typically running at 1GHz and Mali 400 GPU
  • 512MB DDR3 RAM memory
  • SATA connector with 5V SATA power jack
  • HDMI connector with FullHD support (1080p)
  • 2 x USB High-speed host with power control and current limiter
  • 100MBit native Ethernet
  • MicroSD card connector
  • 4GiB NAND Flash version available
  • LiPo backup battery support, LCD interface, 160 GPIOs with I2C, SPI, ... (and what else the A10 supports)
  • Full board documentation available

Installing the openSUSE Tumbleweed image

  1. Download the image you want (Leap is stable, Tumbleweed is rolling) from here:
    Susemini.png
    Version:
    Tumbleweed
    JeOS image E20 image XFCE image LXQT image X11 image
    If the direct links above do not work for you (as we are constantly building new images), please check the general download directory for the images.
  2. As root extract the image onto your SD card (replace sdX with the device name of your SD card).
    WARNING: all previous data on the SD card will be lost. Check first if the device you have selected is really your SD card!
     xzcat [image].raw.xz | dd bs=4M of=/dev/sdX iflag=fullblock oflag=direct; sync
  3. Alternatively can download Etcher, an open source tool to flash your image graphically.

  4. Insert the SD card with the openSUSE image into your A10-OLinuXino-LIME.
  5. Connect the A10-OLinuXino-LIME to your PC via serial port (optional, but helpful for debugging; USB-TTL serial cable needed).
  6. Connect the A10-OLinuXino-LIME to your monitor (via DVI/HDMI, optional).
  7. Power on the A10-OLinuXino-LIME.
  8. Ethernet is configured to request an IP via DHCP, check your DHCP server for the A10-OLinuXino-LIME IP if used.
  9. Have a lot of fun...

Default login is root:linux, works on serial console, via ssh, GUI.


LCD Display Support

The default graphics output device is HDMI. The Olimex boards have also LCD connectors and there are LCD displays available for that. To enable the LCD support the u-boot must be configured. Unfortunately the current setup needs a recompile of the u-boot to enable the LCD.

Manual Compile u-boot

All the steps can be done on the target board. It needs a working internet connection for further downloads. Do the following steps to enable the LCD:

1. Install compiler and tools for build u-boot

zypper ref
zypper in git gcc make dtc ncurses-devel bc

2. Download the u-boot sources

git clone git://git.denx.de/u-boot.git
cd u-boot

3. Configure u-boot

make A10-OLinuXino-Lime_defconfig
make menuconfig
set "ARM architecture --> LCD panel timing details" to the display properties
set "ARM architecture --> LCD panel power enable pin" to PH8
set "ARM architecture --> LCD panel backlight enable pin" to PH7
set "ARM architecture --> LCD panel backlight pwm pin" to PB2

4. Build u-boot

make

5. Install u-boot

dd if=u-boot-sunxi-with-spl.bin of=/dev/mmcblk0 bs=1024 seek=8

6. Convert the device tree to source

cd ..
dtc -I dtb -O dts /boot/dtb/sun4i-a10-olinuxino-lime.dtb > sun4i-a10-olinuxino-lime.dts

7. add an addition framebuffer node to the device tree source

...
chosen {
...
  framebuffer@2 {
    compatible = "allwinner,simple-framebuffer", "simple-framebuffer";
    allwinner,pipeline = "de_fe0-de_be0-lcd0";
    clocks = <0x2 0x1 0x3 0x24 0x3 0x2b 0x3 0x2c>;
    status = "disabled";
  };
}
...

8. Convert the device tree back to binary format

dtc -I dts -O dtb sun4i-a10-olinuxino-lime.dts > /boot/dtb/sun4i-a10-olinuxino-lime.dtb

9. Reboot

LCD Parameters

Each LCD display needs a configuration string in "ARM architecture --> LCD panel timing details". See http://linux-sunxi.org/LCD for examples. E.g. for the Olimex 4.3" display this parameter string is working:

x:480,y:272,depth:18,pclk_khz:9000,le:40,ri:5,up:8,lo:8,hs:30,vs:5,sync:3,vmode:0

Touchscreen Support

The A10 has a touchscreen controller integrated. If the LCD display supports touchscreen the support for that can be enabled in the device tree:

1. Convert the device tree to source

dtc -I dtb -O dts /boot/dtb/sun4i-a10-olinuxino-lime.dtb > sun4i-a10-olinuxino-lime.dts

2. modify the rtp node:

...
rtp@01c25000 {
  compatible = "allwinner,sun4i-a10-ts";
  reg = <0x1c25000 0x100>;
  interrupts = <0x1d>;
  allwinner,ts-attached;
  #thermal-sensor-cells = <0>;
};
...

3. Convert the device tree back to binary format

dtc -I dts -O dtb sun4i-a10-olinuxino-lime.dts > /boot/dtb/sun4i-a10-olinuxino-lime.dtb

4. Reboot

To use the touchscreen it must be calibrated. To do that the xinput_calibrator tool can be used. It is not (yet) available in the openSUSE packet pool and must be compiled manually:

zypper ref
zypper in gcc xorg-x11-devel make gcc-c++
wget http://github.com/downloads/tias/xinput_calibrator/xinput_calibrator-0.7.5.tar.gz
tar -xf xinput_calibrator-0.7.5.tar.gz
cd xinput_calibrator-0.7.5
./configure
make
make install

optional the calibration tool an also be installed from repository (might be unavailable from time to time):

zypper ar -f http://download.opensuse.org/repositories/home:/frank_kunz/openSUSE_Factory_ARM/ xinput-cal
zypper ref
zypper in xinput_calibrator

Run the xinput_calibrator tool in a X console and follow the instructions for calibration and copy-paste the console output to a config file as listed in the console output.

Usage Hints

  • The graphical output is driven by the simplefb support of the Linux kernel. One simplification is that it does not support hotplug of a display. E.g. when connecting a HDMI display a reboot is needed to activate it.
  • The LCD and HDMI configuration in this description is mutually exclusive, so either HDMI or LCD is supported. When both is connected HDMI has preference over LCD.