Cubietruck

Cubieboard / Cubietruck Debian SD image

My goal is to build and maintain headless stable base to deploy various services (web, mail, samba, …). The images are compiled from scratch and sometimes patched if necessary. Images are suitable for any microSD card larger than 1G and can be installed to NAND or SATA. First boot takes longer time (around 2m) than usual (25s). It regenerates SSH keys, sets your MAC address, resizes partition to fit your SD card and downloads the package lists (apt-get update). It will reboot one time automatically on first boot to take effect for changes.

  • Debian Wheezy 7.5 based & Debian testing (Jessie) testing
  • Kernel 3.4.103 with broad hardware support, headers included
  • Ethernet adapter with DHCP and SSH server ready on default port (22) with regenerated keys @ first boot
  • Wireless adapter with DHCP ready but disabled (/etc/network/interfaces, WPA2: normal connect or AP mode)
  • Enabled audio devices: analog, HDMI, spdif and I2S
  • Advanced IR driver with RAW RX and TX (you need an IR diode)
  • Bluetooth ready (working with on-board device)
  • Clustering / stacking
  • USB redirector – for sharing USB over TCP/IP (disabled by default /etc/init.d/rc.usbsrvd)
  • root file-system auto resize
  • Graphics desktop environment upgrade ready
  • NAND and SATA install script included (/root)
  • Disabled LED blinking, logo, boot messages (/etc/init.d/disable_led.sh, kernel.config, kernel parameters in uEnv.txt)
  • Total memory is 2000Mb (disabled all memory reservations for GPU)
  • Login script shows Cubietruck / Cubieboard 2 auto MOTD with current CPU temp, hard drive temp, ambient temp from Temper if exits & actual free memory
  • MAC address from chip ID, manual optional
  • root password=1234 and expires at first login
  • sunxi-tools included: fex2bin, bin2fex, nand-part
  • Performance tweaks:
    • /tmp & /log = RAM, ramlog app saves logs to disk daily and on shut-down
    • IO scheduler NOOP for SD, CFQ for sda (mechanical hard drive). (change in /etc/sysfs.conf)
    • journal data writeback enabled. (/etc/fstab)
    • commit=600 to flush data to the disk every 10 minutes (/etc/fstab)
    • optimized CPU frequency scaling 480-1010Mhz with interactive governor and small 20% overclock (/etc/init.d/cpufrequtils)
    • eth0 interrupts are using dedicated core
    • Allwinner Security System cryptographic accelerator
  • Known bugs or limitations
    • On board Bluetooth firmware loading sometime fail. Reboot helps.
    • NAND install script sometime fails. Dirty but working workaround – installing Lubuntu to NAND with Phoenix tools and run the nand-install again.
    • Gigabit ethernet transfer rate is around 50% of its theoretical max rate (hardware or firmware issue)
    • Shutdown, reboot and battery troubles regarding poor AXP chip driver (firmware issue, probably solved in development kernel). Partially fixed.
    • Due to bad PCB placement, there is some crosstalk between Wifi and VGA in certain videomodes.
WheezyJessieCommon
VGA HDMI   Debian stable distribution (recommended)
VGA HDMI   Debian testing distribution

  • Unzipped images can be written with Image Writer on Windows or with DD command in Linux/Mac (dd bs=1M if=filename.raw of=sd card device). Kernel package should be uncompressed under root user to / Change boot parameter if your old kernel has different name.
  • Upgrading. Most changes are usually to kernel. Download it to / and uncompress under user root and untar with: tar xvfp sunxi_kernel_x.x.xx_mod_head_fw.tar. Change boot parameter if your old kernel has different name. For other changes please refer to script build history.
  • Warning for mainline/next kernel (3.17.x). Kernel is experimental! There is no video driver – no console, no wifi, no bluetooth, … boot manager experimental too. Use on your own risk.

v2.6 / 22.8.2014
v2.5 / 2.8.2014
v2.4 / 11.7.2014
v2.3 / 2.7.2014
v2.2 / 26.6.2014
v2.1 / 13.6.2014
v2.0 / 2.6.2014
v1.9 / 27.4.2014
v1.8 / 27.3.2014
v1.7 / 26.2.2014
v1.6 / 9.2.2014
v1.52 / 7.2.2014
v1.5 / 22.1.2014
v1.4 / 12.1.2014
v1.3 / 3.1.2014
v1.23 / 1.1.2014
v1.2 / 26.12.2013
v1.0 / 24.12.2013

Cross compile environment

If you want to compile your own image or kernel for Cubieboards you will need to set-up development environment. Since there are troubles regarding the proper compiler I suggest you to use proven configuration. This image / kernel was successfully compiled on Ubuntu 12.04 LTS x64 – you are going to need server image and 15-20G of space. Install only basic system and get build script from Github.

  1. Download Ubuntu 12.04 LTS x64
  2. Create Virtual machine with 15-20G
  3. Install minimal system and execute the following code
sudo apt-get -y install git
cd ~
git clone https://github.com/igorpecovnik/Cubietruck-Debian
chmod +x ./Cubietruck-Debian/build.sh
cd ./Cubietruck-Debian

Edit configuration at the beginning of the script and run it afterwards. The compilation takes 30-60 minutes (on average desktop PC) and you might be asked for some input. Your will find compiled images in the directory defined in variable DEST/output. In case of success you will find zip compressed images for VGA/HDMI and kernel with modules and headers.

Optional customization

keyboard: dpkg-reconfigure keyboard-configuration
system language: dpkg-reconfigure locales
time zone: dpkg-reconfigure tzdata
screen resolution: edit /boot/uEnv.txt and change it/reboot.

Desktop

If you want to try a semi simple desktop environment:

apt-get -y install xorg
apt-get -y install lightdm
apt-get -y install xfce4 xfce4-goodies tango-icon-theme gnome-icon-theme
reboot

Check this site for others.

Support

You can post questions below or in the project topic on the Cubieforums.

483 thoughts on “Cubieboard / Cubietruck Debian SD image

  1. Igor I run the image from nand perfectly now but i have two main problem.
    1- I can’t mount sd card to use it
    2-I’ve installed usb mounter to automate mounting my usbs but doesn’t work properly because when I plug one or more usb appearing a lot of folder named usb0,1,2,3,etc and it doesn’t display the usb name. How can I configure it?
    Many thanks

  2. This is an excellent image, works nicely for my owncloud server. Thanks!

    I do not need any video output since I run my cubietruck via ssh only.

    How can I disable the video output (hdmi & vga) to save power?

  3. Igor, thanks for the work, but i have one question. Which is the password for ssh connection? I’ve tried cubie, root and 1234 with no luck. I use cubieboard remotely into my home so I need to enter via ssh to install and setup everything.
    Thanks

    1. Hey. Are you sure you haven’t change it? The default is root / 1234 and it prompt’s you to change at first login. You should manually login first time, not with some automated script. Maybe this is the case?

          1. Another question. I’ve installed x11vnc but I can’t launch it properly via ssh. I receive XOpenDisplay failed (:0). Is there a way to remote connect via vnc?

  4. Hi Igor,
    while building image from your github I got problem at the end with
    “killall ntpd” in build.sh.
    After this instruction my Ubuntu system is going off.
    Please help. Thanks

  5. Hi Igor,

    I suggest you add your image to https://linux-sunxi.org/Cubietruck#Images as there are no images listed, and I find your Debian image is highly reliable and painless to get going. I am still on 2.2 and have had no dramas with it (except I can’t seem to get my BT keyboard to connect to it but I think that is a problem with my cheap no name keyboard)

Dodaj odgovor

Vaš e-naslov ne bo objavljen. * označuje zahtevana polja