i.MX6 SOM
Description
The MicroSOM is a module format created by SolidRun that means a micro-format System on Module. Unlike a System on Chip (SoC), the MicroSOM is an integrated circuit board that includes a System on Chip, as well as key capabilities required for core system function. Typically, each SOM will include the hardware required for physical memory, ethernet physical header hardware, as well as physical circuits and antenna connection if WiFi / Bluetooth functionality is available in the embedded SoC.
The MicroSOM is intended to be an intermediate module which is connected to a “carrier” that offers the input, output, and other integrated functions for the larger intended system. While SolidRun offers two main carrier products, including the Cubox-i and HummingBoard, the specifications for the MicroSOM interface has been published for integration by other OEM offerings, if desired.
Hardware specification
- Detailed Hardware specification of the MicroSom can be found here:
IMX6 MicroSom Specs
- Detailed IMX6 Cubox-i specification can be found here:
IMX6 Cubox-i - Detailed IMX6 Hummingboard specification can be found here:
IMX6 Hummingboard
- Additional Documents: IMX6 MicroSom Documents
Carrier Support
The MicroSOM is intended to be an intermediate module which is connected to a “carrier” that offers the input, output, and other integrated functions for the larger intended system. While SolidRun offers two main carrier products, including the Cubox-i and HummingBoard, the specifications for the MicroSOM interface has been published for integration by other OEM offerings, if desired.
Comparison Table
SolidRun offers several MicroSOMs with varying capability, differentiated primarily by processing cores, network capability, and integrated memory amount.
Notes: The features of the MicroSoms are limited to the features of the Carrierboard/Hummingboard.
For example: MicroSom supports eMMC, but carrierboard not.
Description/Model | MicroSom i.MX6 Solo | MicroSom i.MX6 Dual Lite | MicroSom i.MX6 Dual | MicroSom i.MX6 Quad |
---|---|---|---|---|
Core | ||||
Processor Core | Single core ARM A9 | Dual core ARM A9 | Dual core ARM A9 | Quad core ARM A9 |
Processor Speed | 1GHz (up to 1.2GHz) | 1GHz (up to 1.2GHz) | 1GHz (up to 1.2GHz) | 1GHz (up to 1.2GHz) |
Floating Point | VFPv3 | VFPv3 | VFPv3 | VFPv3 |
SIMD | NEON | NEON | NEON | NEON |
Graphics Processing Unit | Vivante GC880 | Vivante GC880 | Vivante GC2000 | Vivante GC2000 |
3D Graphics Support | OpenGL ES 1.1/2.0 | OpenGL ES 1.1/2.0 | OpenGL ES 1.1/2.0, OpenCL 1.1E | OpenGL ES 1.1/2.0, OpenCL 1.1E |
HW Video Dec/Enc | Multi- Format | Multi- Format | Multi- Format | Multi- Format |
Memory | 32 bit, 512MB DDR3 @ 800Mbps | 64 bit, 1GB DDR3 @ 800Mbps | 64 bit, 1GB DDR3 @1066Mbps | 64 bit, 2-4GB DDR3 @ 1066Mbps |
Connectivity | ||||
Wired Network | 10/100/10001 Mbps | 10/100/10001 Mbps | 10/100/10001 Mbps | 10/100/10001 Mbps |
Wireless Network | Optional2 | Optional2 | Optional2 | 10/100/10001 Mbps |
Bluetooth | Optional2 | Optional2 | Optional2 | Optional2 |
I/O Expansion (IC-Connector on Carrier) | ||||
Display Max Resolution | HDMI: 1080p LCD: WUXGA(1920 x 1200) | HDMI: 1080p LCD: WUXGA(1920 x 1200) | HDMI: 1080p LCD: WUXGA(1920 x 1200) | HDMI: 1080p LCD: WUXGA(1920 x 1200) |
Display Interfaces | LVDS, HDMI 1.4, DSI, Parallel | LVDS, HDMI 1.4, DSI, Parallel | LVDS, HDMI 1.4, DSI, Parallel | LVDS, HDMI 1.4, DSI, Parallel |
Dual Display Support | ![]() | ![]() | ![]() | ![]() |
Supported External Storage | NOR-Flash, eMMC, SD-microSD, PCIe SSD | NOR-Flash, eMMC, SD-microSD, PCIe SSD | NOR-Flash, eMMC, mSATA,SD-microSD, PCIe SSD | NOR-Flash, eMMC, mSATA,SD-microSD, PCIe SSD |
SD/MMC5 | 3 | 3 | 3 | 3 |
USB 2.0 Host | 1 | 1 | 1 | 1 |
USB OTG | 1 | 1 | 1 | 1 |
Serial Ports | 3 | 3 | 3 | 3 |
Digital Audio Serial Interface | 1 | 1 | 1 | 1 |
Camera Interface Port | 2 Lane CSI | 2 Lane CSI | 4 Lane CSI | 4 Lane CSI |
CAN Bus | ![]() | ![]() | ![]() | ![]() |
S-ATA | ![]() | ![]() | Gen II, 3Gbps | Gen II, 3Gbps |
PCI-Express 2.0 | x1 | x1 | x1 | x1 |
Second Ethernet | Via PCIe or USB NIC | Via PCIe or USB NIC | Via PCIe or USB NIC | Via PCIe or USB NIC |
I2C | 3 | 3 | 3 | 3 |
SPI | 3 | 3 | 3 | 3 |
PWM | 4 | 4 | 4 | 4 |
GPIO | 75 | 75 | 75 | 75 |
JTAG | Test Point Header | Test Point Header | Test Point Header | Test Point Header |
S/PDIF Input | ![]() | ![]() | ![]() | ![]() |
S/PDIF Output | ![]() | ![]() | ![]() | ![]() |
RTC | On Carrier | On Carrier | On Carrier | On Carrier |
Mechanical and Electronic Specifications | ||||
Temperature Range | Commercial Extended Industrial | Commercial Extended Industrial | Commercial Extended Industrial | Commercial Extended Industrial |
Main Voltage | 5V | 5V | 5V | 5V |
IO Voltage | 3.3V | 3.3V | 3.3V | 3.3V |
SoM Interface | Hirose DF40 connectors 1.5mm up to 4.0mm mating height | Hirose DF40 connectors 1.5mm up to 4.0mm mating height | Hirose DF40 connectors 1.5mm up to 4.0mm mating height | Hirose DF40 connectors 1.5mm up to 4.0mm mating height |
Dimensions (W x L) | 47mm x 30mm | 47mm x 30mm | 47mm x 30mm | 47mm x 30mm |
1 1000Mbps link is limited to 470Mbps actual bandwidth due to internal chip bus limitation
2 MicroSOM rev 1.3 Wifi: 802.1 b/g/n - 2.4 Ghz / Bluetooth: V 4.0 (BCM4330)
2 MicroSOM rev 1.5 Wifi: 802.1 b/g/n - 2.4 / 5 Ghz, single or dual MIMO with Bluetooth V4.0 (TI Wilink 8 WL18xx)
4 Supported by MicroSom Rev. v1.4 and upper
5 The current U-Boot version that SolidRun provides does not support boot from eMMC of SOM rev 1.5 on Hummingboard base/pro carrier. Boot from eMMC should be possible at the hardware level, but U-Boot software support for that is not complete.
Interface
The MicroSOM pairs with a carrier board via a set of pin headers on the underside of the module.
- A MicroSOM ordered as part of a package with an included carrier will have 2 sets of 80 pin connectors to mate with the HummingBoard carrier.
- A MicroSOM ordered as a standalone part will include the third set of 80 pin connector for integration with advanced carriers that provide multi-boot capability to permit eFuse settings other than the SD card.
NOTE: A MicroSOM that is ordered as a standalone part will not have the eFuses on the i.MX6 freescale processor “blown” to set a boot configuration. Doing so is an irreversible process that will remove the ability of the boot order to be set to a device other than the MicroSD card. This provides the advanced end-user flexibility to create new configurations to boot from other devices or to work with a different / proprietary carrier board. This also means that advanced users will need to be prepared to use the freescale documentation to identify and set the eFuses correctly for their needs.
Detailed information on the connectivity of the MicroSOM to a carrier board is available at the MicroSom documents page. MicroSOM Interface
Advanced users who would like to set these fuses using the starting point published by SolidRun may refer to the Setting the eFuses (developers) or the older topic Setting the eFuses for MicroSOM and Hummingboard tutorial.
Additional Documents
Documents like the schematics of the Carrierboards and the ROHS/CE Certificates are listed here:
IMX6 MicroSom Documents
[]
Hummingboard Customization
Mix & Match Feature for business customers: Choose the model that’s right for you. You can choose your SolidRun uSOM and match it to each Hummingboard Carrierboard you wish:
- Choose the Carrierboard
- Choose the MicroSom
- Choose optional Wifi/Bt
More Information can be found at our Mix and Match section of our Solid-Run.com Website or contact us directly.
Create your own Carrierboard
For manufacturers and developers additional information concerning “how to create your own carrierboard” can be found on this page:
Create an IMX6 Carrierboard
Setting the eFuses for MicroSOM
It is possible to blow boot efuses in the SolidRun i.MX6 SOM in order to (permanently and irreversibly) set the boot device to one of the following:
- eMMC
- MicroSD
- M.2 SATA SSD
Note: If you plan to use SolidRun’s HummingBoard Gate or Edge, or its design, efusing is no longer needed - as of revision 1.4 of these carrier boards, a jumper based boot select option has been added. For more information: IMX6 Hummingboard
Without efusing or jumpers the i.MX6 SOM will default to boot from USB OTG.
SolidRun can provide the i.MX6 products either efused or non-efused. The customer (without any specialist hardware) may also perform the efusing process at later date. If you need your SOMs fused, please make sure that the SKU you order is ended with “F”. for example - SRMX6SOWT1D512E008V15CF Please note that the efusing process is irreversible.
For technical instructions on how to perform efusing please visit:
Migrating from MicroSOM rev 1.3 to rev 1.5
In September 2016 SolidRun announced the immediate availability of MicroSOM rev 1.5. Following is the PCN -
http://wiki.solid-run.com/lib/exe/fetch.php?media=imx6:microsom:docs:sr-usom-mx6-pcn-20160915.pdf
Hardware of rev 1.5
The new MicroSOM is footprint compatible when it comes to it's size and board to board connectivity; but adds more GPIOs.
For more information on which GPIOs refer to the simplified schematics of rev 1.5 -
http://wiki.solid-run.com/lib/exe/fetch.php?media=imx6:microsom:docs:sr-usom-mx6-rev-1_5-simplified-schematics.pdf
IMX6 Documents
Specifically page #3 and new pins are marked with 'Rev-1.5'. The main addition adds canbus capable pins (defined in the i.MX6 iomux), and eInk interface.
The mechanical modifications are covered in this document -
http://wiki.solid-run.com/lib/exe/fetch.php?media=imx6:microsom:docs:sr-usom-mx6-1.3-vs-1.5.pdf
Software for rev 1.5
In order to support the new TI Wilink8 based WiFi solution in rev 1.5 the user needs to upgrade his u-boot, kernel and place WiLink8 wifi firmware in his root filesystem as follows -
- Kernel can be found here - https://github.com/SolidRun/linux-fslc branch 3.14-1.0.x-mx6-sr. Notice the addition of new device tree files with the suffix -som-v15.dtb (for example imx6qdl-hummingboard2-som-v15.dtsi).
- U-Boot that auto discovers the rev of the SOM and accordingly sets the device tree name to be loaded can be found here -https://github.com/SolidRun/u-boot-imx6
- TI WiLink8 WiFi firmware can be cloned from the following git - https://git.ti.com/wilink8-wlan/wl18xx_fw
CONFIG_WL18XX=y
CONFIG_WLCORE=y
CONFIG_WLCORE_SPI=y
CONFIG_WLCORE_SDIO=y
CONFIG_WILINK_PLATFORM_DATA=y
CONFIG_WL_TI=y
# CONFIG_WL1251 is not set
# CONFIG_WL12XX is not set
The firmware is typically searched under under /lib/firmware/ti-connectivity/wl18xx-fw-4.bin directory in your root filesystem.
The firmware is loaded when the interface is activated 'ifconfig wlan0 up' so there is no race between initializing the driver before the root filesystem is mounted.