i.MX6 builds

The following is a list of the i.MX6 images available for download. Each of them is a link to a blog post describing the image, where to get it, and how to create an SD card image. Each will run directly on Sabre Lite, Nitrogen6X and Nitrogen6X SOM boards.

Please contact us if you have any difficulties with these images.


47 Responses to “i.MX6 builds”

  1. Marko July 12, 2012 12:37 pm #

    Does any of the mentioned images support Open GL ES2 acceleration out of the box? Let’s say I would like to install and run glmark2-es2.

    • ericn July 12, 2012 1:29 pm #

      Hi Marko,

      All of them except the Linaro builds have some level of support:

      • Android uses it to accelerate the U/I and video playback
      • Timesys and LTIB images have Vivante samples installed
      • The Freescale Ubuntu image has the drivers and libraries installed, but not used.

      I’m not sure if all of the headers needed to compile your own apps are present in the Timesys BSP,
      but I heard rumor that Timesys is working with Vivante to make it so.

  2. mark3smith August 20, 2012 1:44 pm #

    Would it be possible to get the platform.x509.pem and platform.pk8 files that we used in building this Android image? They are needed to create applications with system authority.

    • ericn August 20, 2012 3:42 pm #

      Hi Mark,

      Sure. There’s nothing secure about them. I just uploaded a tar-ball of the build/target/product/security/ directory to android-r13.2-security.tar.gz.

      Let us know if that works out for you. We’re pretty much newbies when it comes to the application side of Android.

  3. Jeff Collins September 14, 2012 10:52 am #

    I purchased a Nitrogen 6 board with the micro sd card. On boot it crashes. I have an HDMI display plugged into the board. How do I fix this. I get the errors
    Finding mousesh: ff0000: bad number
    Framebuffer fb0
    Resolution 1280 720
    Screen resolution: 1280 x 720
    HDMI display
    Search for input device Acer T230H
    Mouse device is Auto
    cat: can’t open ‘/etc/ts.dev': No such file or directory
    killall: timesys-theatre: no process killed
    killall: timesys-theatre-1080p: no process killed
    killall: timesys-theatre-720p: no process killed
    daemon: fatal: failed to stop the demo daemon: No such process
    Starting demo…

    BusyBox v1.20.2 (2012-08-15 16:59:15 EDT) built-in shell (ash)
    Enter ‘help’ for a list of built-in commands.

    # write_reg: i2c_transfer failed
    write_reg: i2c_transfer failed
    ft5x06: i2c_transfer failed

  4. ericn September 14, 2012 5:49 pm #

    Hi Jeff,

    Some of these ‘errors’ aren’t really errors… For example, this one is from the ft5x06 touch screen driver and means in English: “You don’t have one attached”. I should really fix that in the driver because it’s a very common case…

    Others come from the startup of the timesys demo. If you look in /etc/rc.d/S99-timesys-theatre, you’ll see a ‘killall’ command before (re)starting the demo U/I. Since these processes aren’t present on boot, the killall command says “no process killed”.

    Are you not seeing a U/I on your display? Are you able to drive it with a USB mouse attached?

    • Jeff September 15, 2012 6:06 am #

      I know they are not all errors, I just grabbed the last of the messages to give context. I have 2 screens connected, one lvds and one hdmi. The LVDS screen has 3 boxes on the top that say timesys, and the HDMI screen is blank. It looked to me that the screen used by linux should be hdmi, according to the default boot variable in uboot. I presume uboot is putting up the output on the LVDS display, and I do get a console on the serial port. It just does not appear to start the hdmi sceeen or bring up the timesys graphics demos. I had expected something akin to the imx53 qsb board software, that all I had to do was plug it in and linux would boot with a display.

  5. Richard September 26, 2012 4:05 am #


    I was wondering if anyone knew if the openCL capability of the Graphics core on the i.MX6 was exposed through binary blob or otherwise in any of the existing linux builds. I can’t find any concrete information on the matter.

    Any information would be appreciated, thanks.

    • ericn September 26, 2012 4:26 am #

      Hi Richard,

      Yes. OpenCL is exposed in the LTIB and Timesys builds. There’s even a set of samples in /opt/viv. The Linaro build doesn’t include the closed source libraries.

      • Richard September 28, 2012 1:25 am #

        That’s excellent, thank you very much!

  6. Subodh November 2, 2012 9:02 am #

    Hi! On my Nitrogen6W loaded oneiric-imx6-20120626.tar.gz (Ubuntu From Freescale link above). “uname -a” gives
    Linux linaro-ubuntu-desktop 3.0.15-01386-g5c661b1 #64 SMP PREEMPT Tue Jun 26 11:16:43 MST 2012 armv7l armv7l armv7l GNU/Linux

    It comes up fine, but I have noticed a few things that I don’t understand:
    1. About once every 20-30 seconds, response to simple commands like “ls” or “cat /etc/fstab” is terrible. With “set filec” it is quite visible. Not sure, if I need to get a 32GB micro-sd card and create swap on there or what? “top” in another terminal hangs too and when it comes back “top” shows Xorg as top hog mostly, but not always. Has anyone seen this or figured out?

    2. At boot, auto logs on “linaro” user (not sure how to change that).

    Any ideas, specially the 1st issue?

    Thanks a bunch.

  7. Bob January 9, 2013 10:41 am #

    You probably want to look at cpufreq governor (in /sys). They sometimes do ridiculous shift in frequence, that lead the cpu at 64MHz, so it’s slow.
    Set the minimum speed to something higher, or set it as performance

  8. mark3smith February 15, 2013 10:35 am #

    Would it be possible to get the platform.pk8 and platform.x509.pem files for R13.4-GA SD card image?

  9. synthnassizer March 15, 2013 7:28 am #

    Hello there!
    I am trzing to download the rootfs “Freescale Ubuntu image w/1.1.1 kernel (no blog post)”, but there is no download button the next page (where I read the licence)!

    Thank you.

    • ericn March 15, 2013 9:15 am #

      Sorry about that. I pooched the URL.

      It should be good now.

  10. Seth May 3, 2013 9:46 am #

    I’ve got a Nitrogen6x board with the wifi and one of your touch screen displays. I’ve downloaded the “Freescale Ubuntu Image w 1.1.1 kernel. I can see the ethernet and wifi cards when I do the ifconfig command, however when I try to access the network cards from the icon on the Ubuntu desktop, not cards are recognized. Any ideas on how to fix this?



    • ericn May 3, 2013 9:49 am #

      Can you run ‘ifconfig -a’ from the shell?

      • Seth May 3, 2013 9:51 am #

        Here’s the ifconfig -a output:

        ifconfig -a
        can0      Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00  
                  NOARP  MTU:16  Metric:1
                  RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:10 
                  RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
        eth0      Link encap:Ethernet  HWaddr 00:19:b8:01:09:f2  
                  UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                  RX packets:350 errors:0 dropped:4 overruns:0 frame:0
                  TX packets:23 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:1000 
                  RX bytes:35121 (35.1 KB)  TX bytes:7866 (7.8 KB)
        lo        Link encap:Local Loopback  
                  inet addr:  Mask:
                  UP LOOPBACK RUNNING  MTU:16436  Metric:1
                  RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:0 
                  RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
        wlan0     Link encap:Ethernet  HWaddr de:ad:be:ef:00:00  
                  UP BROADCAST MULTICAST  MTU:1500  Metric:1
                  RX packets:0 errors:0 dropped:0 overruns:0 frame:0
                  TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
                  collisions:0 txqueuelen:1000 
                  RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)
        • ericn May 3, 2013 12:30 pm #

          Hi Seth,

          This looks good, so you have a proper device, and should be able to get an IP address by hand using dhclient eth0.

          You should be able to put a line like this into /etc/network/interfaces and have the interface start with either ifup eth0 or automatically at boot.

          auto eth0

          I’m sorry I overlooked that when creating the image. The default Freescale release has things configured to rename the interfaces, so you’ll likely see eth5 or somesuch in there.

          • Seth May 3, 2013 1:04 pm

            Eric n,

            The file /etc/network/interfaces contained the following lines created by the system:

            # interfaces(5) file used by ifup(8) and ifdown(8)
            auto lo
            iface lo inet loopback

            Trying to get something going in a hurry, I created a batch file that I manually execute with sudo after booting, the contents of are:

            # manually bring wired ethernet up – Seth
            ifconfig eth0 netmask broadcast
            route add default gw

            plus I entered the following line in /etc/rc.local with the routing information

            route add default gw

            This does get the wired ethernet going including the browser and all command line internet requests.

            Besides the network gui tool not working, other things I’ve noticed are the ‘user accounts’ tool in the system settings – it doesn’t work at all. The ubuntu software center displays the packages available, but I haven’t been able to get it to download one yet – either it takes a very long time or it also has some issues. However using sudo apt-get install from the command line does work fine.

            It would be really nice to figure out what is going on here with Ubuntu’s Gui interface.

            Thanks for your quick response, if I figure out anything else I let you know.


      • Seth May 9, 2013 11:27 am #


        The serial port ttymxc0 on the Nitrogen6x board is having trouble talking to another board which uses the ADM3307C RS232 interface chip. I believe it may have something to do with the RS232 voltage levels that the Nitrogen6x produces not being compatible . Is there any documentation that you can provide on the hardware for the RS232 ports on the Nitrogen6X?



  11. JohnWilkes June 6, 2013 6:16 am #


    I have a Sabre Lite board and I have been having great problems trying to get it boot Linux. The TimeSys demo that came preloaded on the SD card works (though I sometimes have to restart it a few times before it will drive the HDMI monitor).

    I have tried TimeSys Linux (as downloaded from their site and from the supplied CD) and Linaro from here: http://boundarydevices.com/linaro-12-09-for-i-mx6/ and neither will work. For Timesys, I have tried booting from SD card and from TFTP. I have only tried SD card for linaro so far.

    The problem is generally similar, though rarely exactly the same: the Kernel starts to load but either hangs during the booting process or ends with a kernel panic. It ususally gets to about the stage of recognising the USB mouse and keyboard, though sometimes it is before this stage.

    If it wasn’t for the fact that the supplied system works, I would be suspecting hardware fault at this point. Does anyone have any clue as to what may be going wrong, or what I should try next?



    • ericn June 6, 2013 7:04 am #

      Hi John,

      To your first point (HDMI display not detected), are you using a DVI monitor? We’ve had reports of similar issues that we haven’t been able to duplicate.

      On the second, it’s a bit hard to say what’s going on without more detail. The Linaro release is quite old, and some kernel updates may be required.

      The Timesys images should just work.

      I’ll reach out off-blog to get some of the kernel details, but can you provide your U-Boot version here? The memory timing fixes from February could be a factor.

      • JohnWilkes June 6, 2013 7:23 am #

        HI Eric,

        Thanks for your swift reply.

        Yes it is a DVI monitor: HP Compaq LA1951g.

        I will send the complete boot logs by email. These show the u-boot version:

        U-Boot 2009.08-00530-g1f7edab (Oct 29 2012 – 13:22:53)

        Is this what you wanted? I flashed this u-boot using the upgradeu command with a file called u-boot-20121029.bin that I pulled from somewhere on your site (sorry can’t remember where now – it’s been a long day and there have been alot of downloads!).



        • ericn June 6, 2013 8:17 am #

          Hi John,

          You should upgrade your U-Boot to something later to address some memory timing issues as discussed in this post.

          You can grab a binary from here: u-boot-nitrogen6x-20130211.imx.

          I’d be surprised if this fixes the boot issues, but I’ll look through the details in your e-mail.

        • ericn June 6, 2013 8:24 am #

          I forgot to add a couple of things in my earlier message.

          After downloading the 20130211 version of U-Boot, copy it to the root of your SD card and call it u-boot.imx. Then stop the boot process at the U-Boot prompt and run upgradeu:

          MX6QSABRELITE U-Boot > run upgradeu
          ... counts down from 5, then programs
          ... hit the reset button when prompted
          U-Boot > 
        • ericn July 23, 2013 6:21 pm #

          Hi John,

          In the better late than never category, we investigated some issues with DVI monitors and our i.MX6 boards.

          Some details (and links) are in this comment.

  12. phil.bergeron-burns September 20, 2013 11:40 am #

    For “Freescale Ubuntu image w/1.1.1 kernel (no blog post)” what is the 1.1.1 referring to? When I installed this build it seemed to be Linaro 12.03 ?

    • ericn September 22, 2013 8:46 am #

      Hi Phil,

      Our naming (numbering) convention comes from Freescale’s BSP release process. Freescale issues roughly quarterly releases of baseline boot loader and Linux kernel code for each of their processors, and we re-base our code on top of each. You can see this in the branch names of our Github kernel repository for i.MX6.

      In the past, Freescale used the year and month of the release as their basis for numbering, but oddly, the last releases have been numbered 1.0.0, 1.1.1, 4.0.0 and 4.1.0.

      The Linaro 12.03 tag is actually the version of the cross-compiler used to compile the kernel.

  13. phil.bergeron-burns November 1, 2013 8:13 am #


    I’d like to be sure my Nitrogen6x has armhf enabled. I’m pretty sure this is working on the freescale Ubuntu 4.0.0 and 1.1.1 builds. I’m running processor intensive floating point code and it seems to run fast. My issue is that 4.0.0 has issues with SATA and 1.1.1 has the intermittent startup sleep issue. I’d like to try the Linaro Raring build – but does it have hard float supported for the iMX6? My impression is that the builds based on the Freescale BSP are the only builds that have hard float – but that may be wrong. Does Android have hard float?


    • ericn November 1, 2013 9:03 am #

      Hi Phil,

      None of the Freescale Ubuntu images on our site use ARMHF, but all of the Raring images do.

      Android uses EABI.

      • Phil November 1, 2013 9:14 am #

        Thanks Eric,

        I’m surprised that the freescale Ubuntu images don’t have hard float. I’m running the arm hard fload embedded JVM and it was working well. Why do you recommend Jellybean over the other binaries? How does EABI compare to ARMHF?

        • ericn November 1, 2013 9:24 am #

          The Freescale releases are quite old (Oneiric due to inertia).

          We recommend the Jellybean 4.3 version because there are a number of important bug fixes, especially as it relates to media playback and GPU.

          As for the differences (pros and cons) between EABI and ARMHF, I’ll defer to others for that, but the biggest win I see is the inclusion and use of the NEON instruction set when building apps and libraries. I believe Konstantinos at Genesi published some numbers a long while ago, but all I can find at the moment is this post on i.MX Community.

    • ericn November 1, 2013 9:05 am #

      I forgot to mention that you should really use the Jellybean 4.3 release and update to the latest U-Boot. The intermittent startup issue(s) have been resolved.

  14. Jose R Fernandez November 5, 2013 7:48 am #

    Does anybody know or has experienced the use of RAID controllers such RocketRaid 2300 PCI-E x1 with the Nit6X_PCIE plus mPCIE to PCI-E Daughter Board? What OS image do you recommends taking a NAS and DLNA development in mind with Nitrogen6X?

    Best regards,

  15. hhgaan November 8, 2013 4:18 am #

    Hi, everyone, I am a new user of nitrogen6x, I have met a problem, after I installed the linux on the sd card, I plug it into the nitrogen6x board, but the monitor appears: 6x_bootscript not found,……….scanning usb for storage devices…0storage devices…! it is the same as not sd card pluging in the board case, is there anyone can help me ? Thanks very much!

    • ericn November 8, 2013 7:19 am #

      Hello Hhgaan,

      You’re going to need (wantU-Boot getting started post and this post describing boot scripts.

      What tools did you use to create your image? Most userspace builders have support for this.

  16. Roger January 3, 2014 1:12 am #

    does anybody of you know what image is the best for testing OpenCL applications with linux?

    I’m bugged in testing image by image and flashing and flashing back.

  17. Bill Yang February 18, 2014 10:35 am #


    Does any one know how to program a MAC address on i.MX6 board? We need to assign and program the MAC address on i.MAX based board. But I don’t have idea how to. Please help.


  18. Mario Basanta May 23, 2014 8:10 am #


    We bougth the BD-SL-i.MX6 (formerly SABRE Lite) and the nit6x_10-1hannstar display, and the touch is not working. The image we are using is android 4.3 that we also bougth. Could please help us, with the process?

    • ericn May 23, 2014 8:39 am #

      Hi Mario,

      That display and board combination should absolutely work out of the box.

      Can you forward the output of these commands from an ADB or serial console shell?

      • cat /proc/cmdline
      • cat /proc/bus/usb/devices
  19. Agnes June 4, 2014 7:11 am #

    Hi ,

    I downloaded the kernel 3.12.0 from github of boundary devices website and when I try to build a uImage I get error as below. Can you please help

    specify LOADADDR on the commandline to build an uImage


    • ericn June 4, 2014 7:16 am #

      Hi Amonica,

      Please see the build notes here.

Leave a Reply