Home Contacts Terms Send money Cookie policy


Personal blogs


Acme's Friends

Buildroot and Qt on Arietta G25 + XTERM-01

This article illustrates how to generate from sources a BuildRoot distribution for Arietta G25 + XTERM-01 2.8 lcd with Qt graphic libraries and Qt examples

(Buidroot 2015.05, Kernel 4.0.4, Qt 4.8.6)

Building BuildRoot from sources

Follow this article: Bootstrap in less than 5 sec using BuildRoot on Arietta G25 but instead to launch make acme-arietta_defconfig launch:

~/buildroot-2015.05.acme$ make acme-xterm-01_defconfig

This will add Qt and Qt examples to your Buildroot image. Before to launch make follow this instruction to add the right driver to manage the SPI display on your Linux Kernel.

Install the Linux framebuffer drivers for small TFT LCD display modules

Move inside the ~/buildroot-2015.05.acme/output/build/linux-4.0.4/drivers/video directory:

tanzilli@ubuntu:~$ cd ~/buildroot-2015.05.acme/output/build/linux-4.0.4/drivers/video

and clone the fbtft repository.

../video$ git clone https://github.com/notro/fbtft.git

edit the drivers/video/Kconfig file by adding this line before the endmenu line:

source "drivers/video/fbtft/Kconfig"

edit the drivers/video/Makefile file adding this line after obj-y += fbdev/ line:

obj-y += fbtft/

Go back to ~/buildroot-2015.05.acme directory and launch:

~/buildroot-2015.05.acme$ make linux-menuconfig

To enable the frame buffer and the LCD driver:

---> Device Drivers
    ---> Graphics support
        < * > Support for frame buffer devices  ---> 
        < * > Support for small TFT LCD display modules  ---> 
            < * > FB driver for the ILI9341 LCD Controller 

To enable the touch screen:

---> Device Drivers
    < * > Industrial I/O support  --->
        Analog to digital converters  --->
            < * > Atmel AT91 ADC  

exit from the configuration menu and launch:

~/buildroot-2015.05.acme$ make

after about 1 hour (on my Mac Book pro I5) the microSD files will be ready:

tanzilli@ubuntu:~/buildroot-2015.05.acme$ ls -al output/images/
total 43660
drwxrwxr-x 2 tanzilli tanzilli     4096 Jun  3 08:36 .
drwxrwxr-x 6 tanzilli tanzilli     4096 Jun  3 08:15 ..
-rw-rw-r-- 1 tanzilli tanzilli    24226 Jun  3 10:46 acme-arietta.dtb
-rwxrwxr-x 1 tanzilli tanzilli    14529 Jun  3 08:26 boot.bin
-rw-rw-r-- 1 tanzilli tanzilli 41666560 Jun  3 10:46 rootfs.tar
-rwxrwxr-x 1 tanzilli tanzilli  2986064 Jun  3 10:46 zImage

Insert a formatted microSD card and copy these files on it:

~/buildroot-2015.05.acme$ cp output/images/boot.bin /media/$USER/kernel
~/buildroot-2015.05.acme$ cp output/images/acme-arietta.dtb /media/$USER/kernel
~/buildroot-2015.05.acme$ cp output/images/zImage /media/$USER/kernel
~/buildroot-2015.05.acme$ sudo tar xvf output/images/rootfs.tar -C /media/$USER/rootfs

At the first boot Arietta will be very slow (about 2 minutes) to calculate the openssh keys. At the next boots it will need less than 5 secs.

Try a Qt example

Get the access to the board using the DPI interface or via SSH.

Login with as root using the password acmesystems

Calibrate the touchscreen by typing:

# ts_calibrate

then try one of the Qt example available:

# cd /usr/share/qt/examples/widgets/sliders
# ./sliders 

now run this command in order to set Qt to use tslib:

# export QWS_MOUSE_PROTO=Tslib:/dev/input/event0

then launch the first example (see the video):

# /sliders -qws

Download the ready-to-use microSD binaries

  • Format a microSD using gparted in this way:
    • First partition 32MB (or more) FAT16 or FAT32
    • Second partition large as you like as EXT4
  • Copy in the first partition these files:
  • Untar as root (sudo tar xvz rootfs.tar) in the second partition this file:

Login data

  • SSH, and Debug port: user root password acmesystems

Software versions

  • Kernel Linux 4.0.4
  • Buildroot 2015.05

Configuration files

Related links

XTERM-01 : 2.8 inch TFT display with resistive touch for Arietta G25 EURO 25.00
  • 2.8 inch TFT display
  • Resistive touch screen
  • USB host port

Arietta G25 not included

| Product description... |

ARIETTA-G25 : ARM9 Linux Embedded Module (128MB) EURO 25.00

Arietta G25 is a small and low-cost multi-chip module that integrates:

  • a ARM9 @ 400Mhz CPU Atmel AT91SAM9G25
  • a 128MB of DDR2 RAM
  • up to 3 USB 2.0 host ports
  • 20x2 pads for strip pitch 2.54mm (100mil)

Basic Version with no strips mounted

| Product description... |

ARIETTA-G25-256 : ARM9 Linux Embedded Module (256MB) EURO 30.00

Arietta G25 is a small and low-cost multi-chip module that integrates:

  • a ARM9 @ 400Mhz CPU Atmel AT91SAM9G25
  • a 256MB of DDR2 RAM
  • up to 3 USB 2.0 host ports
  • 20x2 pads for strip pitch 2.54mm (100mil)

Basic Version with no strips mounted

| Product description... |

STRIP-001 : Male strip 20x2 pin pitch 2.54mm EURO 0.60
  • Male strip
  • 20x2 pin
  • Pitch 2.54mm (100mils)
  • Pin lenght 6mm

Acme Systems srl
Via Aldo Moro 53 - 00055 Ladispoli (RM) - Italy
P.IVA/C.F. 08114831004
Tel + - Fax +39.06.622.765.31
PEC: acmesystemssrl@pec.it
Iscritta al Registro delle Imprese di Roma al n. 08114831004

Atmel© Certified Partner

Acme Systems provides this documentation "as is" without warranty or guarantees of any kind. We not provide any direct support for the Open Source preinstalled software but, through these pages and forum posts, all of the information required to obtain the sources, install, use and update the Open Source software that can be run on the Acme boards. Please note that all of the preinstalled software, used on the Acme Systems products, are Open Source so you have to check the license terms provided by the authors (usually the GPL) before using it in any commercial or non-commercial product, by yourself. Before to contact us please note that WE ARE MAINLY HARDWARE DESIGNERS and NOT LINUX GURUS and therefore could be better to post your questions to the Acme Systems forum and ensure that all of the site contributors and large software community can read and reply to your questions.

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.