Difference between revisions of "UDOO"

From eLinux.org
Jump to: navigation, search
(Added tutorial: Creating a Bootable Micro SD card from the sources)
(Community information added)
(32 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[File:UDOO_quad.jpg|200px|thumb|right|UDOO]] This page collects information about UDOO [http://www.udoo.org www.udoo.org] the first ever small sized computer that merges in one single board an ARM cortex-A9 iMX.6 CPU and an Arduino compatible board embedded with a dedicated ARM SAM3X CPU. [http://www.kickstarter.com/projects/435742530/udoo-android-linux-arduino-in-a-tiny-single-board UDOO project has been funded trough Kickstarter], rising $641,614 in sixty days thanks to 4,172 backers.
+
[[File:UDOO_quad.jpg|200px|thumb|right|UDOO]] This page collects information about UDOO [http://www.udoo.org www.udoo.org] the first ever small sized computer that merges in one single board an ARM cortex-A9 iMX.6 CPU and an Arduino compatible board embedded with a dedicated ARM SAM3X CPU. [http://www.kickstarter.com/projects/435742530/udoo-android-linux-arduino-in-a-tiny-single-board UDOO project has been funded through Kickstarter], raising $641,614 in sixty days thanks to 4,172 backers.
  
 
''Notice: The UDOO Wiki pages on this site is collaborative work - the UDOO team is not responsible for content on these pages.''
 
''Notice: The UDOO Wiki pages on this site is collaborative work - the UDOO team is not responsible for content on these pages.''
  
 
= What's UDOO? =
 
= What's UDOO? =
UDOO is a mini PC that could run either Android or Linux, with an Arduino-compatible board embedded. It is a powerful prototyping board for software development and design, it’s easy to use and allows to create projects with minimum knowledge. UDOO merges different computing worlds in one; each world has its strengths and weaknesses, and all of them are useful today in education as well as Do-It-Yourself (DIY) and rapid prototyping endeavours. UDOO is an open hardware, low-cost computer equipped with an ARM i.MX6 Freescale processor for Android and Linux, alongside  Arduino DUE’s ARM SAM3X, both CPU integrated on the same board!
+
UDOO is a mini PC that can be used both with Android and Linux OS, with an embedded Arduino-compatible board. It is a powerful prototyping board for software development and design; it’s easy to use and allows developing projects with minimum knowledge of hardware. UDOO merges different computing worlds together: each one has its proper strenght- and weak- points, but all of them are useful in today's life for educational purposes as well as Do-It-Yourself (DIY) and quick prototyping. UDOO is an open hardware, low-cost platform equipped with an ARM i.MX6 Freescale processor, and an Arduino Due compatible section based on ATMEL SAM3X ARM processor, all this available on the same board!
  
 
== UDOO goals: ==
 
== UDOO goals: ==
* Develop an innovative product for a growing market
+
*Develop an innovative product for a growing market
* Give a new vision to the educational framework: the idea is to train up a new generation of engineers, designers and software developers skilled in digital technology: physical computing, multi-media arts, interactive arts, IoT...
+
*Give a new vision to the educational framework, with the idea of training up a new generation of engineers, designers and software developers skilled in digital technology: physical computing, multi-media arts, interactive arts, IoT...
* Boost up the DIY world
+
*Give a boost to the DIY world
* Offer a low cost embedded platform for interactive art with powerful tools: Processing, OpenCV, PureData, openFramework
+
*Offer a low cost embedded platform for interactive arts with powerful tools: Processing, OpenCV, PureData, openFramework
* Provide companies with a great tool for fast prototyping
+
*Provide companies with a great tool for fast prototyping
  
 
= Specifications =
 
= Specifications =
UDOO retail line up consist of three models that share most features with just slightly differences in term of connections and CPU power. All the three models features an embedded Arduino compatible board based on Arduino DUE schematic. UDOO’s size are 4.33 inch x 3.35 inch (11 cm x 8.5 cm).
+
UDOO retail line up consists of three models, sharing most of the featuresand different only for connectivity and i.MX6 processor used. All three models feature an embedded Arduino compatible section based on Arduino Due schematic. UDOO’s size are 4.33 inch x 3.35 inch (11 cm x 8.5 cm).
 +
 
 +
'''Warning: The UDOO I/O pins are 3.3V compliant. Higher voltages (like 5V) would damage the board.'''
 +
 
 +
Learn more about [http://www.udoo.org/faq-items/what-are-the-wrong-uses-that-invalidate-the-warranty/ wrong uses that invalidate the warranty].
  
 
== GPIO features ==
 
== GPIO features ==
[Description needed]
+
The retail version of UDOO, compared to the first beta version releases has these additional features:
Current version, UDOO rev. C, has these additional features:
+
*S/PDIF digital audio in & out through pin headers;
* S/PDIF digital audio in & out through pin headers;
+
*I2S/AC97/SSI digital audio multiplexer through pin headers;
* I2S/AC97/SSI digital audio multiplexer through pin headers;
+
*FlexCAN (Flexible Controller Area Network) through pin headers, it is possible to switch this function’s management between i.MX6 processor and SAM3X8E processor;
* FlexCAN (Flexible Controller Area Network) through pin headers, you will be able to choose if you want to switch this function to the iMX6 or the SAM3X;
+
*External SD card support through pins header: plug an external controller for an additional SD card slot or for an eMMC module.
* Second SD card support through pins header: this means you can plug an external controller for a second SD card or an external controller for an eMMC module
+
  
 
==UDOO Quad ==
 
==UDOO Quad ==
[Description needed]
+
*Freescale i.MX6Quad, 4 x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
* Freescale i.MX 6 ARM Cortex-A9 CPU Quad core 1GHz with ARMv7A instruction set
+
*GPU Vivante GC 2000 for 3D + Vivante GC 355 for 2D (vector graphics) + Vivante GC 320 for 2D (composition)
* GPU Vivante GC 2000 for 3D + Vivante GC 355 for 2D (vector graphics) + Vivante GC 320 for 2D (composition)
+
*Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
* Accelerators for 2D, OpenGL® ES2.0 3D and OpenVG™
+
*RAM DDR3 1GB
* Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino DUE)
+
*76 fully available GPIO with Arduino-compatible R3 1.0 pinout
* RAM DDR3 1GB
+
*HDMI and LVDS + Touch
* 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
+
*2 Micro USB (1 OTG)
* HDMI and LVDS + Touch
+
*2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
* 2 Micro USB (1 OTG type a+b)
+
*Analog Audio and Mic jacks
* 2 USB type A (x2) and 1 USB connector (requires a specific wire)
+
*CSI Camera Connection
* Analog Audio and Mic
+
*on board Micro SD card reader (boot device)
* CSI Camera Connection
+
*Power Supply (6-15V) and External Battery connector
* on board Micro SD card reader reader (boot device)
+
*Ethernet RJ45 (10/100/1000 MBit)
* Power Supply (6-15V) and External Battery connector
+
*WiFi Module
* Ethernet RJ45 (10/100/1000 MBit)
+
*SATA connector with power header
* WiFi Module
+
* SATA connector with power plug
+
  
 
==UDOO Dual ==
 
==UDOO Dual ==
[Description needed]
+
*Freescale i.MX6DualLite, 2x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
* Freescale i.MX 6 ARM Cortex-A9 CPU Dual core 1GHz with ARMv7A instruction set
+
*GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
* GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
+
*Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
* Accelerators for 2D, OpenGL® ES2.0 3D and OpenVG™
+
*RAM DDR3 1GB
* Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino DUE)
+
*76 fully available GPIO with Arduino-compatible R3 1.0 pinout
* RAM DDR3 1GB
+
*HDMI and LVDS + Touch
* 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
+
*2 Micro USB (1 OTG)
* HDMI and LVDS + Touch
+
*2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
* 2 Micro USB (1 OTG type a+b)
+
*Analog Audio and Mic jacks
* 2 USB type A (x2) and 1 USB connector (requires a specific wire)
+
*CSI Camera Connection
* Analog Audio and Mic
+
*on board Micro SD card reader (boot device)
* CSI Camera Connection
+
*Power Supply (6-15V) and External Battery connector
* on board Micro SD card reader reader (boot device)
+
*Ethernet RJ45 (10/100/1000 MBit)
* Power Supply (6-15V) and External Battery connector
+
*WiFi Module
* Ethernet RJ45 (10/100/1000 MBit)
+
* WiFi Module
+
* SATA connector with power plug
+
  
 
==UDOO Dual Basic ==
 
==UDOO Dual Basic ==
[Description needed]
+
*Freescale i.MX6DualLite, 2x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
* Freescale i.MX 6 ARM Cortex-A9 CPU Dual core 1GHz with ARMv7A instruction set
+
*GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
* GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
+
*Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
* Accelerators for 2D, OpenGL® ES2.0 3D and OpenVG™
+
*RAM DDR3 1GB
* Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino DUE)
+
*76 fully available GPIO with Arduino-compatible R3 1.0 pinout
* RAM DDR3 1GB
+
*HDMI and LVDS + Touch
* 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
+
*2 Micro USB (1 OTG)
* HDMI and LVDS + Touch
+
*2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
* 2 Micro USB (1 OTG type a+b)
+
*Analog Audio and Mic jacks
* 2 USB type A (x2) and 1 USB connector (requires a specific wire)
+
*CSI Camera Connection
* Analog Audio and Mic
+
*on board Micro SD card reader (boot device)
* CSI Camera Connection
+
*Power Supply (6-15V) and External Battery connector
* on board Micro SD card reader reader (boot device)
+
* Power Supply (6-15V) and External Battery connector
+
  
= Creating a bootable Micro SD card =
+
= Tutorials =
== Creating a bootable Micro SD card from image ==
+
== Getting started ==
The easiest way to get started with your UDOO is to create a bootable micro SD card with the main operative system. [[Getting started]]
+
An easy step by step guide that will lead you through the procedure to [http://www.elinux.org/UDOO_Getting_started boot your UDOO for the very first time].
  
 +
== Creating a bootable Micro SD card from precompiled image ==
 +
How to [http://www.elinux.org/UDOO_creating_a_bootable_Micro_SD_card_from_precompiled_image create a bootable micro SD card for UDOO] board, starting from a precompiled image file containing the UDOO Operating system, which runs using the i.MX6 processor.
  
== Creating a bootable Micro SD card from the sources ==
+
== Creating a bootable Micro SD card from binaries ==
 +
How to [http://www.elinux.org/UDOO_creating_a_bootable_Micro_SD_card_from_precompiled_binaries create a bootable Micro SD card from precompiled binaries].
  
These are instructions for a Linux system. A different way to create a bootable SD card is to compile the sources.  
+
== How to program the embedded Arduino microcontroller ==
 +
How to [http://www.elinux.org/UDOO_programming_the_embedded_Arduino_microcontroller program the embedded Arduino microcontroller]
  
A bootable SD card has 3 different elements:
+
== How to install Debian with debootstrap ==
 +
How to [http://www.elinux.org/UDOO_Installing_Debian_With_Debootstrap install Debian with debootstrap]
  
*File System (Ubuntu Linaro, Yocto)
+
== How to boot from a SATA drive ==
*Kernel
+
How to [http://www.elinux.org/UDOO_boot_from_sata boot from SATA drive]
*U-Boot (Universal Bootloader)
+
  
These are the required steps to create a bootable SD card starting from the sources and using a non formatted SD card:
+
= Resources =
 +
[Description needed]
  
=== Download Binaries and Sources. ===
+
= Community =
  
First you need to download the necessary Binaries and/or Sources
+
'''IRC'''
 +
There is an (unofficial) Udoo discussion channel on IRC.
 +
Using the IRC client of your choice, use server information: irc.freenode.net. Room name is #udoo.
  
* Create a development folder
+
'''Forums'''
mkdir <custom_path>/udoo-dev
+
The official Udoo forums can be found at http://www.udoo.org/forum  Please note, currently the forums are heavily moderated. Before you can start a new thread, you'll need to respond to a couple other posts first. Typically it's a good idea to post a reply to the "Introduce Yourself" thread in the "General" section, to, well, introduce yourself.
  
If the folder is created in home the command will be:
+
Also, please use the search feature before posting to cut down on repetitive issue threads.
 
+
cd
+
mkdir udoo-dev
+
 
+
* then move inside the folder
+
  cd udoo-dev
+
 
+
* Download inside the “udoo-dev” folder the '''file system''' for UDOO Dual or Quad following this link http://www.udoo.org/downloads/
+
 
+
* Download inside the “udoo-dev” folder the compiled '''Kernel''' (uImage) for UDOO Dual or Quad from the binaries section of the website http://www.udoo.org/downloads/.
+
 
+
It’s also possible to download and compile the Kernel sources from the github repository https://github.com/UDOOboard/UDOO-DUAL. If you decide to compile the sources you also need to download (and extract) the cross-compiler from the sources section of the website http://www.udoo.org/downloads/
+
 
+
*  Download inside the “udoo-dev” folder the '''U-Boot''' file (u-boot.bin) from the binaries section http://www.udoo.org/downloads/
+
 
+
After these steps in “udoo-dev” we’ll have 3 binaries: File System, U-Boot and Kernel (in case you downloaded the Kernel compiled binary), while we’ll have 2 binaries: File System and U-Boot plus 2 folders containing the Kernel sources (from the github link) and the cross-compiler.
+
 
+
=== Compiling the Kernel.  ===
+
'''(NOTE: If you choose the Kernel Binary skip this point).'''
+
 
+
* Move inside the folder udoo-dev/kernel/
+
   
+
* Check the build configuration of the Kernel executing:
+
 
+
make menuconfig
+
 
+
and make sure the following entry is checked:
+
 
+
      System Type  ---->
+
              Freescale MXC Implementations  ---> 
+
                      [*] Support i.MX 6 Quad and DualLite SECO UDOO platform
+
 
+
* Start compiling with the command:
+
make -j8 CROSS_COMPILE=<CROSS_COMPILER_FOLDER>/bin/arm-fsl-linux-gnueabi- ARCH=arm uImage
+
 
+
You may be prompted to install some packages to successfully compile the kernel.
+
 
+
E.g. in Ubunt 10.04 you need to install the following packages:
+
 
+
sudo apt-get install ncurses-dev uboot-mkimage
+
 
+
(This operation could take up to 20 minutes)
+
 
+
The compiled Binary (uImage) will be available at arch/arm/boot/ folder.
+
 
+
=== Preparing the partitions on the sd card ===
+
 
+
* Insert the SD card in the card reader.
+
 
+
* Launch gparted:
+
sudo gparted
+
 
+
* Select the right Micro SD label from the drop down menù (e.g.  /dev/sdc)
+
'''(NOTE: Be sure you’re using the correct label otherwise you’ll lose every data on the hard drive on your computer if you get the wrong device name)'''
+
 
+
* Unmount and delete the eventual Micro SD partitions
+
(If necessary you need to create a partition table. Select from the top menù: Device → Create Partition Table... → Apply)
+
 
+
* Create a new partition with the following parameters and press Add.
+
 
+
Free space preceding (MiB): 10
+
New size (MiB): dipende dalla dimensione dell’sd
+
Free space following (MiB): 10
+
Create as: Primary partition
+
File system: ext3
+
(NOTE: ext 4 not yet supported)
+
Label: <UDOO_MICROSD_LABEL>
+
 
+
* Press the green V form, wait for the partition to be done and exit from gparted.
+
 
+
=== Copy the file on Micro SD card ===
+
 
+
* File System. Move Inside udoo-dev and extract the tar.gz file containing the filesystem inside the Micro SD with the following command:
+
 
+
tar -xzvpf <NAME_OF_TAR_FS> -C /media/<UDOO_MICROSD_LABEL>/
+
(This operation could take up to 30 minutes)
+
 
+
* Kernel. Move inside the folder where you downloaded or compiled the uImage file and copy the binary inside the Micro SD boot folder using the following command:
+
sudo cp uImage /media/<UDOO_MICROSD_LABEL>/boot
+
 
+
* U-Boot. Move Inside udoo-dev and copy the u-boot.bin file inside the Micro SD with the following command:
+
sudo dd if=u-boot.bin of=/dev/sdc bs=512 seek=2 skip=2
+
'''(NOTE: Be sure you’re using the correct label otherwise you could lose data on the hard drive on your computer if you get the wrong device name)'''
+
 
+
* Unmount the partition you previously created using the following command:
+
umount /media/<UDOO_MICROSD_LABEL>
+
 
+
* The Micro SD card is ready, you can now plug it on UDOO and boot the system.
+
 
+
= Resources =
+
[Description needed]
+
 
+
= Community =
+
[Description needed]
+
  
 
= References =
 
= References =

Revision as of 21:29, 3 November 2013

UDOO
This page collects information about UDOO www.udoo.org the first ever small sized computer that merges in one single board an ARM cortex-A9 iMX.6 CPU and an Arduino compatible board embedded with a dedicated ARM SAM3X CPU. UDOO project has been funded through Kickstarter, raising $641,614 in sixty days thanks to 4,172 backers.

Notice: The UDOO Wiki pages on this site is collaborative work - the UDOO team is not responsible for content on these pages.

What's UDOO?

UDOO is a mini PC that can be used both with Android and Linux OS, with an embedded Arduino-compatible board. It is a powerful prototyping board for software development and design; it’s easy to use and allows developing projects with minimum knowledge of hardware. UDOO merges different computing worlds together: each one has its proper strenght- and weak- points, but all of them are useful in today's life for educational purposes as well as Do-It-Yourself (DIY) and quick prototyping. UDOO is an open hardware, low-cost platform equipped with an ARM i.MX6 Freescale processor, and an Arduino Due compatible section based on ATMEL SAM3X ARM processor, all this available on the same board!

UDOO goals:

  • Develop an innovative product for a growing market
  • Give a new vision to the educational framework, with the idea of training up a new generation of engineers, designers and software developers skilled in digital technology: physical computing, multi-media arts, interactive arts, IoT...
  • Give a boost to the DIY world
  • Offer a low cost embedded platform for interactive arts with powerful tools: Processing, OpenCV, PureData, openFramework
  • Provide companies with a great tool for fast prototyping

Specifications

UDOO retail line up consists of three models, sharing most of the featuresand different only for connectivity and i.MX6 processor used. All three models feature an embedded Arduino compatible section based on Arduino Due schematic. UDOO’s size are 4.33 inch x 3.35 inch (11 cm x 8.5 cm).

Warning: The UDOO I/O pins are 3.3V compliant. Higher voltages (like 5V) would damage the board.

Learn more about wrong uses that invalidate the warranty.

GPIO features

The retail version of UDOO, compared to the first beta version releases has these additional features:

  • S/PDIF digital audio in & out through pin headers;
  • I2S/AC97/SSI digital audio multiplexer through pin headers;
  • FlexCAN (Flexible Controller Area Network) through pin headers, it is possible to switch this function’s management between i.MX6 processor and SAM3X8E processor;
  • External SD card support through pins header: plug an external controller for an additional SD card slot or for an eMMC module.

UDOO Quad

  • Freescale i.MX6Quad, 4 x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
  • GPU Vivante GC 2000 for 3D + Vivante GC 355 for 2D (vector graphics) + Vivante GC 320 for 2D (composition)
  • Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
  • RAM DDR3 1GB
  • 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
  • HDMI and LVDS + Touch
  • 2 Micro USB (1 OTG)
  • 2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
  • Analog Audio and Mic jacks
  • CSI Camera Connection
  • on board Micro SD card reader (boot device)
  • Power Supply (6-15V) and External Battery connector
  • Ethernet RJ45 (10/100/1000 MBit)
  • WiFi Module
  • SATA connector with power header

UDOO Dual

  • Freescale i.MX6DualLite, 2x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
  • GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
  • Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
  • RAM DDR3 1GB
  • 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
  • HDMI and LVDS + Touch
  • 2 Micro USB (1 OTG)
  • 2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
  • Analog Audio and Mic jacks
  • CSI Camera Connection
  • on board Micro SD card reader (boot device)
  • Power Supply (6-15V) and External Battery connector
  • Ethernet RJ45 (10/100/1000 MBit)
  • WiFi Module

UDOO Dual Basic

  • Freescale i.MX6DualLite, 2x ARM® Cortex™-A9 core @ 1GHz with ARMv7A instruction set
  • GPU Vivante GC 880 for 3D and 2D (vector graphics) + Vivante GC 320 for 2D (composition)
  • Atmel SAM3X8E ARM Cortex-M3 CPU (same as Arduino Due)
  • RAM DDR3 1GB
  • 76 fully available GPIO with Arduino-compatible R3 1.0 pinout
  • HDMI and LVDS + Touch
  • 2 Micro USB (1 OTG)
  • 2 USB 2.0 type A and 1 USB 2.0 internal pin header (requires adapter cable)
  • Analog Audio and Mic jacks
  • CSI Camera Connection
  • on board Micro SD card reader (boot device)
  • Power Supply (6-15V) and External Battery connector

Tutorials

Getting started

An easy step by step guide that will lead you through the procedure to boot your UDOO for the very first time.

Creating a bootable Micro SD card from precompiled image

How to create a bootable micro SD card for UDOO board, starting from a precompiled image file containing the UDOO Operating system, which runs using the i.MX6 processor.

Creating a bootable Micro SD card from binaries

How to create a bootable Micro SD card from precompiled binaries.

How to program the embedded Arduino microcontroller

How to program the embedded Arduino microcontroller

How to install Debian with debootstrap

How to install Debian with debootstrap

How to boot from a SATA drive

How to boot from SATA drive

Resources

[Description needed]

Community

IRC There is an (unofficial) Udoo discussion channel on IRC. Using the IRC client of your choice, use server information: irc.freenode.net. Room name is #udoo.

Forums The official Udoo forums can be found at http://www.udoo.org/forum Please note, currently the forums are heavily moderated. Before you can start a new thread, you'll need to respond to a couple other posts first. Typically it's a good idea to post a reply to the "Introduce Yourself" thread in the "General" section, to, well, introduce yourself.

Also, please use the search feature before posting to cut down on repetitive issue threads.

References

Home site and community

  1. Official web site http://www.udoo.org
  2. Official forum http://www.udoo.org/forum/index.php

Social account

  1. Facebook fan page http://www.facebook.com/udooboard
  2. Twitter http://twitter.com/UDOO_Board
  3. Google+ https://plus.google.com/u/0/110742692974455430878/posts
  4. YouTube http://www.youtube.com/channel/UCXv5UyGn5jArK8xOAmuSeHg