New Debian image with Armel and Mono-complete is available


There are lot of people who do .NET programming and the Linux alternative MONO. For some weird reason MONO is not working on armhf default Debian distribution which we use (as armhf performs better we ignored so far armel).

We got number of requests from customers who want to program OLinuXino with MONO if we can help with building armel Debian distribution and Dimitar Gamishev completed this few days ago.

With Debian armel mono-complete is installing without problems and we prepared image with it pre-installed. The image is on the Wiki page. Note this Debian should be slower than official armhf Debian as do not use the float point co-processor. Anyway if you want to develop with .NET and MONO armel is the only option. I bet armhf doesn’t work with MONO for some silly library reason, if someone have more knowledge he may dig a bit and fix what is wrong, but for the moment we have something which works!

We are going to release armel for A10 and A20 too, please be patient these images are huge and we triple check all GPIOs and other features work correctly before upload to WIKI.

1. Install on SD card

Note: You should use 4GB Class10 fast micro sd-card to write this image.

The image is Debian linux with kernel 3.4.67+

Default login/password: rootolimex

The file A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.7z is an archive of A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.img file.

So in order to write the image on SD card you have to unzip A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.7z file:

1.1 For Windows

Use 7zip and then use Win32DiskImager.exe for image writing.

1.2 For Linux

Use p7zip package. If you have no installed 7zip then type

#apt-get install p7zip

Copy A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.7z file in your directory and unzip it with

#7za e A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.7z

The output should be a new 4GB file named A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.img

Put 4GB SD card in your card reader and type:

# ls /dev/sd

Then press two times <TAB> you will see a list of your sd devices like sda sdb sdc note that some of these devices may be your hard disk so make sure you know which one is your sd card before you proceed as you can damage your HDD if you choose the wrong sd-device. You can do this by unplugging your sd card reader and identify which “sd” devices remove from the list.
Once you know which device is your sdcard like sda use this text instead of the sdX name in the references below:

#dd if=A13_debian_armel_34_67_WIFI_GCC_GPIO_IN_OUT_I2C_100KHz_UVC_python_TS_release_1.img of=/dev/sdX

The main installed packages are listed below:

  • Mplayer CLI
  • GCC 4.6
  • dpkg
  • git
  • i2c-tools
  • perl
  • Python 2.7
  • mono-complete
  • sunxi-tools (in /opt/sunxi-tools/)

The main tested onboard hardware modules are:

  • GPIO – they are located in /sys/class/gpio directory. Note that first you have to export GPIOs.
  • LCD – 4.3″(480×272), 7″(800×480), 10″(1024×600)
  • Touch_screen – you need calibrate LCD before using touch screen. Type: ts_calibrate and then test it with ts_test
  • ASIX8877 USB-LAN
  • WEB camera A4TECH
  • TL-WN721(TP-LINK USB wireless)
  • WIFI_RTL8188
  • USB_OTG – low/full/high USB host
  • USB_HOST1,2,3 – low/full/high USB host
  • mico_SD_card – used to boot Linux
  • Headphone OUT – Audio output for 60 ohm headphones
  • MIC IN – microphone input
  • I2C2(100KHz) – /dev/i2c-2
  • I2C1(100KHz) – /dev/i2c-1
  • UART1 – /dev/ttyS0
  • UART3 – /dev/ttyS1

Changing A13-OLinuxino LCD or VGA resolution

The default SD card setup is made with settings for LCD 7”(800×480). If you want to change some other LCD or VGA resolution then you have to start script file in /root directory.
# ./

and choose the desired resolution of desired interface(LCD or VGA)
The supported resolution are:

1. 4.3”(480×272)
2. 7”(800×480)
3. 10”(1024×600)

0. 1024×768
1. 800×600

8 Comments (+add yours?)

  1. Trackback: New Debian image with Armel and Mono-complete is available | - Your one stop for news about Debian
  2. Trackback: New Debian image with Armel and Mono-complete is available | Debian InfoDebian Info - Just another James n site
  3. Vincent
    Jan 23, 2014 @ 12:23:01


    Is there any way to boot this kernel & distrib on Olinuxino A10S ?

    Thanks in advance.


  4. Milos_ladni
    Jan 28, 2014 @ 11:27:57

    I can’t find where to download this image file..?
    There is no download link anywhere?


  5. Marc Coussement
    Jul 28, 2014 @ 22:02:43

    When will image for mono on A20 be ready?
    or guide to build?


  6. Masa
    Oct 26, 2014 @ 10:11:20

    You promised armel release for A20 nearly 1 year ago, any news about it?


  7. Marc Coussement
    Oct 28, 2014 @ 20:35:54

    Build mono from Git, I use following steps found on the internet.
    Use at least a high speed 8GB SD-card.
    It may take up to 8 hours to complete this build.
    Don’t expect windows forms to be without errors, see my bug reports on xamarin bugzilla.
    I use GTK-sharp and it works perfect.

    1. First the packages required for building mono need to be installed
    sudo apt-get update && sudo apt-get install build-essential autoconf automake libtool g++ gettext git
    2. Ensure you are in in the root of your home directory (not essential but other steps in this guide make the assumption you are using this directory)
    cd ~/
    3. Clone the git repository for mono (will take a few minutes resolving deltas)
    git clone
    4. Enter the new mono directory createdsudo
    cd mono
    5. Run the configure script to set up ready for building
    sudo ./ –prefix=/usr
    6. Get the gmcs (c# compiler) required for building the mono suite
    sudo make get-monolite-latest
    7. We need to change the name of the c# compiler we got in the last step from basic.exe to gmcs.exe
    cd mcs/class/lib/monolite
    cp basic.exe gmcs.exe
    8. Return to the root mono directory
    cd ~/mono
    9. Run make with the option pointing to the gmcs we have now got (takes about 3.5 hrs)
    sudo make EXTERNAL_MCS=”${PWD}/mcs/class/lib/monolite/gmcs.exe”
    10. Install the now compiled mono
    sudo make install
    11. Test (should return an output stating version and options)
    mono –V
    12. install libgdiplus
    apt-get install libgdiplus

    13. To run a Csharp program
    mono MyCsharp.exe


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: