Mele headless: Debian wheezy (aka testing) armhf with nand install (v1)

Iā€™m posting here a running (base) version of debian wheezy armhf (V1), kernel 3.0.42+.
HEADLESS – Full network stack (netfilter, vlan, …) – NFS server – eth0 – wlan0

Easy to install on the NAND and ready to be tuned.
I added an easy configurator in it (explain at the end of the post).

The kernel is the one i use (wemac tuned, sata ok).

To proceed:

  1. Download the file: debian_wheezy_armhf_v1_mele.img.gz (MD5: ccdc08dd71bdd927f168b29fc2f8e83e)
  2. Unzip the file.
    Linux: gunzip debian_wheezy_armhf_v1_mele.img.gz
  3. DD it to your MMC. You will need a mmc >= 1Go.
    • From linux (put your SDCard and type ‘dmesg’, you will see something about mmcblk0 or sdX appear at the end of dmesg print. Use the device you see to replace <MMC_DEVICE>)
      dd if=<path_to_mele_debian_wheezy_armhf_v1.img> of=/dev/<MMC_DEVICE> bs=1M
    • From windows, you can use any “dd” for windows or choose one of these:
  4. If you want to use SSH, plug an RJ45 ethernet cable in the Mele (connected to a network with DHCP)
  5. Put the MMC in the slot… cross fingers and power the mele
  6. After 15 seconds, you should see a fast led flash Red/Blue. It means the mele has boot properly. You will see the mele on your network (ping scan via nmap or watch on your router/dhcp server for the mele). The default mac is 000A.2000.1000
  7. You can now SSH to it. User: root, Password: root

Highly recommanded:

# ssh-keygen -t rsa -f /etc/ssh/ssh_host_rsa_key
# ssh-keygen -t dsa -f /etc/ssh/ssh_host_dsa_key

# passwd

# passwd user
# deluser user

# echo "<MY_HOSTNAME>" > /etc/hostname

And more:

  • edit /etc/ssh/sshd_config
    Change: UsePAM no
    Change: PasswordAuthentication no (and use authorized_keys to connect)
    Change: PermitRootLogin no (and create your own user with password or authorized_keys)
  • Firewall the mele with iptables.
  • etc…

For wifi:
To scan AP around:
ifconfig wlan0 up
iwlist wlan0 scan

For sata:
modprobe sw_ahci_platform
Run this for permanent sata:
echo "sw_ahci_platform" >> /etc/modules

And more:
Also, i have add a funny program to it to easy some tasks:
Configure Change mac address, Install to nand, configure leds
Pimp my Mele (screenshot and details).
Log as root and type PIMP_MY_MELE

This is it!

88 thoughts on “Mele headless: Debian wheezy (aka testing) armhf with nand install (v1)

  • I bought my Mele in the summer 2012. I know nothing about hacking/programing. I too was hoping that someone would eventually post an image that would magically have me booting straight to Ubuntu desktop. Is that possible?

    Thanks so much for your images as they are the only means that I was able to boot from the SD card. I have played around with some of the command line commands, but have no clue what I am doing.

    What do I do now? How do I get to a GUI?

    Is there a step by step some where?

    Is Ubuntu even running good enough to use on the Mele?

    Thanks so much.

    • Hi Dave,
      Thanks for your comment.
      If your are using the ubuntu image (not this debian headless one), you have a GUI.
      Take the ‘-t0’ update version from the page, log as root and type ‘startx’. In the right click menu, you can launch the terminal ‘xterm’.
      Ubuntu is based on debian. It’s using .deb package files.
      apt-get is the package manager. You can install anything via: apt-get install
      That’s quite simple. You have a lot of tutorials everywhere on ubuntu/debian base.
      The ubuntu image available here is like a simple shrinked version of the ubuntu you could install on a desktop.
      It works the same.

      Ubuntu is running fine on Mele (the A10 is fast but the Mali driver – GFX – is not really well supported).
      From my point of view, with 512M of ram and sata, i’m a big fan of the mele for its network capabilities.
      Great performance per watt. Unbeatable. It’s the future of data centers. That’s why i have work on the mele cluster. A proof of concept.

  • Thanks for all you effort and time. It works just as you. The apt-get function does not seem to work. I am thinking that I have no wireless working. I will try a wired connection.

    Thanks for all your info too.


  • Thanks for your work!

    We finally have a decent Linux image for our Mele. I’ve been using the image for a few days and for some strange reason after a while there comes a day when I turn on Mele and not start.

    I have to reinstall the image in the Nand and reconfigure everything again. What is happening? Will my Mele defective?

        • Hi,
          Which configuration?
          The samba share on usb is slow when the debian is on nand and fast when the debian is on mmc ?
          I don’t get it.

          • Hi!

            The Samba problem was resolved after a few reboots and goes really well (11 MB/s). The problem I’m unable to resolve is to install Debian on Nand. I prepare everything on the SD card and it works perfect but if I install Debian on Nand after a couple of restarts the Mele inexplicably didn’t boot.

  • I have another problem šŸ™

    I installed Samba to share a USB hard disk formatted in EXT4 and reading speed is very low (1.6 MB/s) while with the same disc in my Raspberry reached 8 MB/s.

    I followed the instructions on this URL for tune the settings but I have not achieved anything:

    Testing the hard drive from the Mele get read and write speeds of 30 MB/s

  • Really good work!
    I am looking for a long time for an image where SATA works well. I’ve finally now found it.
    Many many thanks Guillaume.
    Only samba, lampp and FHEM install and finish is my home server!

  • Cool! I was working on the debian stuff myself, but gee you saved me LOTS of time! I’m downloading now.

    Its enabled with a RT/preemptive kernel opts,like more other kernels I’ve seen out there so far for a10?

  • In the meantime running lampp samba and FHEM. Very good.

    But now there is a problem with the drivers.
    I need for FHEM the usbserial and ftdi_sio.
    Where can I get this for your image?

  • I have installed on mk802, its works well, do not recognize all the ram, and mini usb port dont work in otg mode, but i dont care about this for now…

    How i can change the kernel for custom one, once installed?

    Thanks šŸ˜€

    • Once you have a compiled a kernel and its modules:
      Mount the first partition of the MMC and put your uImage.
      Mount the second partition of the MMC and put your modules in /lib/modules/XX

      And that’s it šŸ˜‰

  • Failed to open video device /dev/video0: No such device

    # motion -n
    [1] Failed to open video device /dev/video0: No such file or directory
    [1] Could not fetch initial image from camera

    # streamer -t 5 -r 2 -o /tmp/foobar00.jpeg
    v4l2: open: open(pathname = “/dev/video0”, flags = O_RDWR) failed,

    there /dev/video0 ??

    apt-get install gspca-source ?? can not install

    modprobe gspca

    nano /etc/modules

    ln -s /dev/video0 /dev/video

    • Hi,

      This debian is “headless”. Which means i didn’t load the mali and video in it to make all memory available.
      The mali stuff takes 64Mo on 512Mo which is quite a lot.

      If you need GFX, you can use the ubuntu image which have a gfx kernel or simply take the kernel/modules from the ubuntu and put it in the debian image.


      • Hi,

        I’ve been playing around for a while now with the image and I can not really continue.
        Can you please upload/show the “.config” for the make process?

        I think that would help much.

      • Is there a howto for the installation of the gfx kernel modules from the ubuntu image into the debian image? I have a Pollin HC860 box, the debian img boots fine, but the ubuntu img doesnt…

  • please include nl80211 in next release or could anybody tell me how to build it from source?
    i found the header-file included in /usr/include/linux
    how to proceed?



  • Hi Guillaume.

    Thank you, your image works great with a Mele 2000G I have bought few days ago. However I have two problems.

    1. The PIMP_MY_MELE doesn’t change the MAC address, I tried many times and never boot up after I have change the MAC address. I have tried to do it manually without success.

    2. The Mele 2000G bring 1 GB RAM, however with your image I can only get 484MB.

    Could you advice how to overcome those limitations.

  • Dear Guillaume,

    Thanks a lot for sharing all this, it’s awesome !
    I have installed this image on my mele A2000G. I tried PIMP_MY_MELE to install on NAND but it fails because /dev/ misses the nand partitions:

    mount: special device /dev/nanda does not exist

    Any suggestion ?


    • Hi,

      Odd, which kernel are you using?
      the vanilla one from the image or the updated one?

      It should work for both … what do you have in dmesg?
      A normal one:

      # dmesg | less
      [ 0.730000] [NAND]nand driver, init.
      [ 0.730000] cmu_clk is 360
      [ 0.740000] nand clk init end
      [ 0.740000] offset 0xc: 0x6041
      [ 0.740000] offset 0x14: 0x82000008
      [ 0.750000] [NAND] nand gpio_request
      [ 0.750000] [NAND] nand driver version: 0x2 0x9
      [ 0.760000] nand interrupte register ok
      [ 0.760000] ret of NFC_ChangMode is 0
      [ 0.760000] dma_hdle is 0
      [ 0.770000] dma_hdle is 10000008
      [ 0.770000] cmu_clk is 360
      [ 0.770000] nand clk init end
      [ 0.770000] offset 0xc: 0x6041
      [ 0.780000] offset 0x14: 0x82000005
      [ 0.800000] The 0 disk name = DEVICE, class name = NAND, disk start = 0, disk size = 7782400
      [ 0.810000] The 1 disk name = BOOTFS, class name = DISK, disk size = 32768
      [ 0.810000] The 2 disk name = LROOTFS, class name = DISK, disk size = 4069376
      [ 0.820000] The 2 disk size = 7747584
      [ 0.830000] part total count = 3
      [ 0.830000] nand: unknown partition table
      [ 0.830000] nanda:
      [ 0.840000] nandb: unknown partition table
      [ 0.840000] benn: nand probe enter
      [ 0.850000] [NAND]nand driver, ok.

      • Thanks for your reply.
        With the image from this page (debian_wheezy_armhf_v1_mele.img) freshly installed I got:

        [ 0.760000] [NAND]nand driver, init.
        [ 0.760000] cmu_clk is 360
        [ 0.760000] nand clk init end
        [ 0.760000] offset 0xc: 0x6141
        [ 0.770000] offset 0x14: 0x82000008
        [ 0.770000] [NAND] nand gpio_request
        [ 0.780000] [NAND] nand driver version: 0x2 0x9
        [ 0.780000] nand interrupte register ok
        [ 0.780000] ret of NFC_ChangMode is 0
        [ 0.790000] dma_hdle is 0
        [ 0.790000] dma_hdle is 10000008
        [ 0.790000] [SCAN_ERR] search nand physical architecture parameter failed!
        [ 0.800000] [NAND]init_blklayer fail

        after kernel updated (linux-armhf-headless-1G-3.0.42-3.tar.gz) and reboot, similar log:
        [ 0.760000] [NAND]nand driver, init.
        [ 0.770000] cmu_clk is 360
        [ 0.770000] nand clk init end
        [ 0.770000] offset 0xc: 0x6141
        [ 0.770000] offset 0x14: 0x82000008
        [ 0.780000] [NAND] nand gpio_request
        [ 0.780000] [NAND] nand driver version: 0x2 0x9
        [ 0.790000] nand interrupte register ok
        [ 0.790000] ret of NFC_ChangMode is 0
        [ 0.790000] dma_hdle is 0
        [ 0.800000] dma_hdle is 10000008
        [ 0.800000] [SCAN_ERR] search nand physical architecture parameter failed!
        [ 0.810000] [NAND]init_blklayer fail
        [ 0.810000] wemac Ethernet Driver, V1.01 in file:drivers/net/sun4i/sun4i_wemac.c


  • Great work. The first proper working image for my AllWinner A10 device. It is fast and the load is as expected. I have it running onto a mk802II with 1GB RAM. The only small problem is the that the image uses 512 MB.
    Is there a possibility to change to the available 1024 MB RAM? Thanks a lot in advance.

  • In the end i used another debian image (with tty0 console and drivers for my Alfa rtl8187) but i also had some trouble to get my full 1GB on a tvpad3 (take is as a mele without sata).

    To get full 1GB i did this:

    Installed this u-boot.bin:

    dd if=sunxi-spl.bin of=/dev/[device] bs=1024 seek=8
    dd if=u-boot.bin of=/dev/[device] bs=1024 seek=32

    Used these script.fex params:

    dram_baseaddr = 0x40000000
    dram_clk = 300
    dram_type = 3
    dram_rank_num =
    dram_chip_density =
    dram_io_width =
    dram_bus_width =
    dram_cas = 6
    dram_zq = 0x7b
    dram_odt_en = 0
    dram_size =
    dram_tpr0 = 0x30926692
    dram_tpr1 = 0x1090
    dram_tpr2 = 0x1a0c8
    dram_tpr3 = 0x0
    dram_tpr4 = 0x0
    dram_tpr5 = 0x0
    dram_emr1 = 0x0
    dram_emr2 = 0x0
    dram_emr3 = 0x0

    And added mem=1024M to the kernel cmdline in boot.scr

    • guillaume and Oli –

      Thank you so much for this!! Being able to flash the NAND is a godsend. And being able to use the 1G of the MK802 is a necessity (I use them for teaching a networking class). However how do I ensure the NAND flashed version also makes use of the 1G of dram?
      Using your wonderfully named PIMP_NY_MELE the NAND’ed version only shows 512 instead of 1G (and similarly running “free -m”).


  • Hi all šŸ™‚
    i tried to flash my cubieboard without success šŸ™
    after dd command, i have 2 partition on my flash card (fat+ext4), put it in my cubie, turn power on, but it won’t boot (i don’t know where boot stops, i haven’t serial cable šŸ™ ).
    I downloaded the imgae three time, flashed the sd card a lot of way, but always same result.
    Do i did something wrong, or cubie is not more supported? :-/
    In every case, thanks for your great works šŸ™‚


  • hi.
    i installed your image and then compiled xbmc on it.
    i successfully build it but can not execute.
    u know, there are no disp/lcd/hdmi/.. modules.
    i didn’t know that headless meaning before installed your image šŸ™
    so how can i get these modules and display driver??

  • Ok, seems it was a windows/firefox issue, tried with 2 differents pc the dl was not completed, with debian/midori all ok.
    it works great, thanks Guillaume šŸ˜€

  • Hi Guillaume,
    i played a bit with this version, it works great….but i cannot install lxde šŸ™
    Have you some ideas to make lxde working, or did you plan a version 2 with lxde and mali drivers too?
    Thanks in advance

  • Just tried, but the result was:
    (EE) open /dev/fb0: No such file or directory
    (EE) No devices detected.
    i googled a lot, but i’ve not found any solution :/
    Many thanks

  • Hi Guillaume šŸ™‚
    I tried with gfx kernel (update 5, 1gb version), but cannot load modules (sata too). I made a fresh installation of wheezy v1 (trying to patch a running nand i got a lots of error), done make sdcard (reboot), installed lxde (with lightdm and task-lxde-desktop), but not yet screen, and the cubie see only 308mb of ram šŸ™
    this are modules loaded:
    cpufreq_stats 2318 0
    sun4i_gpio 2961 0
    8192cu 488866 0

    and uname report:
    Linux mele 3.0.42 #5 PREEMPT Thu Apr 4 04:24:58 CEST 2013 armv7l GNU/Linux

    Have you any suggestion to investigate where i could be wrong?
    Many thanks

  • For adapt to 1gb i will look that post, thanks šŸ™‚
    dmseg |grep mali report nothing, and lsmod report
    Module Size Used by
    cpufreq_stats 2318 0
    sun4i_gpio 2961 0
    8192cu 488866 0

    I have two disk attached too, one sata and one usb, but if i give ls -l /dev |grep “root disk” rhe result is
    brw-rw—T 1 root disk 7, 0 Apr 18 19:04 loop0
    brw-rw—T 1 root disk 7, 1 Apr 18 19:04 loop1
    brw-rw—T 1 root disk 7, 2 Apr 18 19:04 loop2
    brw-rw—T 1 root disk 7, 3 Apr 18 19:04 loop3
    brw-rw—T 1 root disk 7, 4 Apr 18 19:04 loop4
    brw-rw—T 1 root disk 7, 5 Apr 18 19:04 loop5
    brw-rw—T 1 root disk 7, 6 Apr 18 19:04 loop6
    brw-rw—T 1 root disk 7, 7 Apr 18 19:04 loop7
    brw-rw—T 1 root disk 93, 0 Apr 18 19:04 nand
    brw-rw—T 1 root disk 93, 8 Apr 18 19:04 nanda
    brw-rw—T 1 root disk 93, 16 Apr 18 19:04 nandb
    brw-rw—T 1 root disk 1, 0 Apr 18 19:04 ram0
    brw-rw—T 1 root disk 1, 1 Apr 18 19:04 ram1

    Seems like if no usb module is loaded šŸ™
    Thanks for your support, and your time too šŸ™‚

    • Sorry, i forgot šŸ˜›
      pimp my mele has only 3 choice in cubieboard:
      nand install
      led color
      mac address
      no video output choice

    • You didn’t load the GFX modules ! šŸ˜‰

      # modprobe lcd
      # modprobe hdmi
      # modprobe ump
      # modprobe disp
      # modprobe mali
      # modprobe mali_drm

      The debian image is not loading them.
      If you get the GFX properly, edit /etc/modules and add them in the same order.

  • Seems a little step is done, now usb disk start (but not the sata one šŸ™ )
    giving modprobe in the right order don’t return error messages, but if i give lsmod the result is
    Module Size Used by
    cpufreq_stats 2318 0
    sw_ahci_platform 3121 0
    sun4i_gpio 2961 0
    8192cu 488866 0

    and the /etc/modules file is



    # sata

    # monitor & video
    modprobe lcd
    modprobe hdmi
    modprobe ump
    modprobe disp
    modprobe mali
    modprobe mali_drm

    dmesg |grep mali still reporting nothing, and cat /var/log/X…. report
    (II) LoadModule: “mali”
    (WW) Warning, couldn’t open module mali
    (II) UnloadModule: “mali”
    (II) Unloading mali
    (EE) Failed to load module “mali” (module does not exist, 0)
    (EE) No drivers available.

    Fatal server error:
    no screens found

    This is drivin mi crazy lol
    Thanks again…for your patience too

  • Stupid error…removed “modprobe” from /etc/modules, and now they will be loaded.
    Pimp my mele now show the video output, selected hdmi, created 50-mali.rules in /etc/udev, but when i give startx the result still

    Failed to load module “mali” (module does not exist, 0)
    (EE) No drivers available.

    Fatal server error:
    no screens found

    And sata will not startup
    this is the lsmod output

    Module Size Used by
    cpufreq_stats 2318 0
    mali_drm 2273 0
    mali 89504 0
    ump 25935 1 mali
    hdmi 16755 0
    lcd 3282 0
    disp 217171 3 lcd,hdmi
    cfbfillrect 2956 1 disp
    cfbimgblt 1761 1 disp
    cfbcopyarea 2621 1 disp
    sw_ahci_platform 3121 0
    sun4i_gpio 2961 0
    8192cu 488866 0

    I will try some other changes, hoping to find the right one
    Thanks a lot

  • You just need to install the mali drivers for xorg.
    You can take them from the ubuntu image, or simply install the ubuntu image and update the kernel.

  • Hi Guillaume, i tried with ubuntu drivers, but they are compiled for version 1.13, and give me “segmentation fault”; but if i set depth to 32, the error become “screen unusable”. I will try to compile by myself following this guide:
    have you any suggestion, or i can simply follow the instruction?
    Thanks in advance šŸ™‚

    • Hi Joachim,

      Not possible from my side, it’s my own network šŸ˜‰

      Use an http client with a ‘continue’ option.

      wget -c http://...


  • Hi Guillaume!

    First of all, thanks for your great work!

    I’m having a small issue with this distro,
    When I list all soudcards with aplay -l no soundcards are shown:

    root@mele:/# aplay -l
    aplay: device_list:252: no soundcards found…

    What can I do?

    It’s Debian headless, without upgrading kernel (cos I lose eth conection when upgrading).

    Thanks a lot!

    • When you upgrade your kernel to the gfx one, you should still have eth0 and you could avoid loading the gfx modules.

      What are is the dmesg around the wemac ?
      You should read something like:

      [ 6.260000] wemac wemac.0: WARNING: no IRQ resource flags set.
      [ 6.400000] wemac wemac.0: eth0: link up, 100Mbps, full-duplex, lpa 0xCDE1

  • Great success! I’m now booting Debian from the nand. Then I installed minidlna and samba and now have a little box to provide streaming of videos to my LG SmartTV. One suggestion (not sure if it’s possible); At boot, set the LED red, then set to blue after boot. If the boot fails the LED will be red and people will know something bad happened. Also then people won’t have to watch the box for the LED flicker.

  • Hi,

    Thanks for all this great work !
    I have one issue. I can’t get my usb hard drive working when I plug it. This is the dmesg I get :
    [ 78.920000] ehci_irq: port change detect
    [ 79.210000] usb 3-1: new high speed USB device number 2 using sw-ehci

    and nothing is detected next.

    Is there any module to load ?

    Thanks for your help.

      • Hi,
        The usb-storage loads well and then appears in the lsmod command.
        But I think, the problem is with my board. I have a cubieboard. It seems the board doesn’t supply enough current because I hear the hard drive motor start but then it stops then starts again and stops etc… I’m using a 2,5′ / 5400 usb hard drive and the board is supplied by 5V 2A which is the maximum it can handle. So maybe the problem is in the board design itself …

        Anyway, thanks for your help !

  • Hello Guillaume, do you know if it’s possible to run plex media server on a cubieboard? Or is there a way to easily stream my media on wan? Thank you.

    • Sorry i don’t know plex, they seem to have some armhf version.

      Do you want to use your cubieboard as the player or a server ?
      As a player, you could use ubuntu + xbmc.
      As a server, you can use: nfs, Samba share: cifs, etc… works great.

      • Hello , thank you for your reply. Yes samba works on local network, but I read it’s not recommended for remote streaming. This is why I was looking at plex server (also already have the app on my tv and android phone). I checked the armhf but unless I did something wrong (I’m new to linux) it installs but will not run! Will look at nfs. If you can help somehow thank you.

        • Samba cifs works great for streaming.
          In fact, i find it more reliable and stable than nfs which supports quite badly network failure.

  • I Can’t get wifi working

    root@mele:~# lsmod
    Module Size Used by
    cpufreq_stats 2318 0
    sun4i_gpio 2961 0
    8192cu 488866 0
    root@mele:~# ifconfig wlan0 up
    wlan0: ERROR while getting interface flags: No such device

      • root@mele:/home# lsusb
        Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
        Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
        Bus 003 Device 002: ID 0bda:8179 Realtek Semiconductor Corp. RTL8188EUS 802.11n Wireless Network Adapter
        Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
        Bus 001 Device 002: ID 05e3:0608 Genesys Logic, Inc. USB-2.0 4-Port HUB
        Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

  • Can anyone share nand image, cause i erased content and nand-part can not create new partition. Maybe some can make nand image with dd and share it?

  • I use a cubietruck and did every step, but the cubietruck does not boot … only the two red leds are on … I investigate the pations on the sd card there was no boot flag … but even with boot flag the image does not boot ?

  • Dear Guillaume,
    I have many Mele M3 devices that I would like to put linux on.
    My device is Mele M3 A20 (firmware version 1.3.1)
    I’ve tried to follow the various posts and images on your site but in all the cases, when the SD card is inserted and the M3 booted, nothing happens. No display, no nothing.
    Can you please help me get linux on my M3s?

Leave a Reply

Your email address will not be published. Required fields are marked *