DHCOM iMX6-D2: Difference between revisions

From Wiki-DB
Jump to navigationJump to search
Christoph (talk | contribs)
Christoph (talk | contribs)
 
(113 intermediate revisions by 6 users not shown)
Line 8: Line 8:


== Hardware ==
== Hardware ==
*[[COM iMX6 Hardware|Hardware]]


{| class="wikitable" align="center" |  style="width: 100%; color: #000000; background: #f3f3f3;" valign="top" |
{| class="wikitable" align="center" |  style="width: 100%; color: #000000; background: #f3f3f3;" valign="top" |
Line 16: Line 15:
|-
|-
|valign="top" style="border: 0pt;" |  
|valign="top" style="border: 0pt;" |  
* '''Cortex-A9  Freescale i.MX6 Solo/Dual(Lite)/Quad up to 1.2GHz'''
* '''Cortex-A9  Freescale i.MX6 Solo/DualLite/Dual/Quad up to 1.2GHz'''
* 2D/3D graphics accelerator
* 2D (GC320) / 3D (GC880/GC2000) graphics accelerator
* 0 - 512 MByte NAND flash memory (8 bit bus width) or 2 - 16 GByte eMMC flash
* 128 - 1024 MByte NAND flash memory (8 bit bus width) or<br/>4 - 16 GByte eMMC flash (8 bit bus width)
* 2 MB SPI boot flash
* 2 MB SPI boot flash
* 256 - 2048 MByte DDR3-1066 or DDR3-800
* 256 - 2048 MByte DDR3-1066 or DDR3-800
* On-board microSD card socket
* On module microSD card socket (4 bit SDIO) <sup>[1]</sup>
* SD/MMC card interface, 4 bit SDIO
* SD/MMC card interface, 4 bit SDIO
* LC display controller, 24 bit colors, 2048x1536 pixels
* LC display controller, 24 bit colors, 2048x1536 pixels
Line 29: Line 28:
* USB 2.0 OTG high-speed
* USB 2.0 OTG high-speed
* USB 2.0 host high speed
* USB 2.0 host high speed
* Full function UART  
* Full function UART <sup>[2]</sup>
* Standard UART with hardware handshake support
* Standard UART with hardware handshake support
* Standard UART
* Standard UART
<br/><sup>[1]</sup> On module microSD card socket is only available if second CAN port is not connected.
<br/><sup>[2]</sup> CTS and RTS is only available if second CAN port is not connected.
|valign="top" style="border: 0pt;" |  
|valign="top" style="border: 0pt;" |  
* CAN interface  
* 2x CAN interface <sup>[1][2]</sup>
* 2 x SPI interface  
* 2x SPI interface  
* 2 x I2CTM interface  
* 2x I²C interface  
* I²S Audio codec (1 x microphone, 1 x Line in, 1x Line out)
* I²S Audio codec (1 x microphone, 1 x Line in, 1x Line out)
* Real-time clock (I2CTM connection), low power temperature compensated
* Real-time clock (I²C connection), low power temperature compensated
* 12 bit analog input  
* 12 bit analog input  
* 1 kbit EEPROM with integrated MAC address  
* 128 Bytes EEPROM with integrated MAC address  
* 16 bit address/databus interface on SODIMM-200 socket  
* 16 bit address/databus interface on SODIMM-200 socket  
* PWM channel
* PWM channel
* 23 GPIOs
* 24 GPIOs (A-W + INT_HI_PRIO)
* JTAG debug connection via FFC plug connector  
* JTAG debug connection via FFC plug connector  
* Industrial temperature range (-40°C to +85°C)
* Industrial temperature range (-40°C to +85°C)
* SODIMM-200 socket with DHCOM pin assignment
* SODIMM-200 socket with DHCOM pin assignment
|}
|}
*[[COM iMX6 Hardware|Hardware Support]]
== Product Change Notifications (PCN) ==
* [[media:PCN_iMX6_R01_2017-08-17.pdf|PCN_iMX6_R01_2017-08-17.pdf (4GByte eMMC)]]
* [[media:PCN_iMX6_R02_2017-08-17.pdf|PCN_iMX6_R02_2017-08-17.pdf (8GByte eMMC)]]
* [[media:PCN_iMX6_R03_2017-09-20.pdf|PCN_iMX6_R03_2017-09-20.pdf (SW ethernet bug)]]
* [[media:PCN_iMX6_R04_2017-09-25.pdf|PCN_iMX6_R04_2017-09-25.pdf (Molex microSD socket)]]
* [[media:PCN_iMX6_R05_2018-01-10.pdf|PCN_iMX6_R05_2018-01-10.pdf (512MB NAND flash)]]
* [[media:PCN_iMX6_R06_2018-10-09.pdf|PCN_iMX6_R06_2018-10-09.pdf (label change)]]
* [[media:PCN_iMX6_R07_2019-11-13.pdf|PCN_iMX6_R07_2019-11-13.pdf (4GByte eMMC)]]
* [[media:PCN_iMX6_R08_2019-11-13.pdf|PCN_iMX6_R08_2019-11-13.pdf (8GByte eMMC)]]
* [[media:PCN_iMX6-009_R01_2021-07-20.pdf|PCN_iMX6-009_R01_2021-07-20.pdf (SPI flash EOL)]]
* [[media:PCN_DHCOM-iMX6-010_R01_2021-12-23.pdf|PCN_DHCOM-iMX6-010_R01_2021-12-23.pdf (microSD socket EOL)]]


== Software Support ==
== Software Support ==
*[[COM iMX6 Bootloader U-Boot|Bootloader U-Boot]]
*[[COM iMX6 Bootloader U-Boot|i.MX6: Bootloader U-Boot]]
*[[DHCOM Update Mechanism|DHCOM Update Mechanism for i.MX6]]
*[[COM iMX6 Linux|i.MX6: Linux]]
<!-- *[[COM iMX6 WinCE|WinCE]] -->
*[[DHCOM Update Mechanism|DHCOM Update Mechanism]]
*[[COM iMX6 Linux|Linux]]
* [https://github.com/dh-electronics/meta-dhsom-imx-bsp Yocto BSP meta layer --> Github]
*[[Yocto | Yocto on DHCOM i.MX6]]
* [https://github.com/dh-electronics/kas-dhsom Easy Yocto build via KAS --> Github]
*[[COM iMX6 WinCE|WinCE]]
*[[COM iMX6 WinCE|i.MX6: WinCE]]
 
== BSP Sources==
==== [https://www.denx.de/wiki/U-Boot U-Boot] ====
* [https://github.com/dh-electronics/u-boot-imx6qdl/tree/dev/legacy/2018.05_dhcom DH U-Boot (based on v2018.05)]
* [https://github.com/dh-electronics/u-boot-imx6qdl/tree/dev/2015.10_dhcom DH U-Boot (based on v2015.10)(deprecated)]
* [https://github.com/dh-electronics/u-boot-imx6qdl/tree/dev/2013.10_dhcom DH U-Boot (based on v2013.10)(deprecated)]


== Downloads ==
==== [https://www.kernel.org Linux Kernel] ====
==== U-Boot Sources ====
* Mainline
* [https://github.com/dh-electronics/u-boot-imx6qdl u-boot source code (GitHub)]
:* [https://github.com/dh-electronics/linux-imx6qdl/tree/release/5.10.131_dhsom/20220725 DH 5.10.131 Release 2022-07-25]
* [https://www.dropbox.com/s/byk52tai49e7vi8/U-boot-2015.10_iMX6_V1.1.0.6.zip?dl=0 Download the latest U-Boot binary (V1.1.0.6)]
* NXP Vendor
:* [https://github.com/dh-electronics/linux-imx6-vendor/tree/release/v4.1.15/20190926 DH 4.1.15 Release 2019-09-26]
:* [https://github.com/dh-electronics/linux-imx6-vendor/tree/release/v3.10.17/20170804 DH 3.10.17 Release 2017-08-04]


==== Update-Kernel ====
== Download binaries/images ==
* [https://www.dropbox.com/s/ng9w8ook61p5zqr/2017-04-07_imx6_updatekernel.zip?dl=0 2017-04-07 update kernel (binary)]
==== U-Boot (for eMMC DHCOMs) ====
* [https://www.dropbox.com/scl/fi/w6iuk32zeb53qqsagq7lt/u-boot-with-spl_imx6_v2.4.0.0_emmc.imx?rlkey=em3oe3p71niuc54aqcqcgzvko&st=5wvmhtrk&raw=1 DH U-Boot v2.4.0.0 (based on v2018.05)]
* [https://www.dropbox.com/s/e6dl6srzj5tbfot/v1-1-0-8_u-boot-imx6qdl.tar.xz?raw=1 DH U-Boot v1.1.0.8 (based on v2015.10)]
: More on how to program it with the U-Boot command "update bootloader ..." on the page [[DHCOM Update Mechanism#Commandline Mode|"DHCOM Update Mechanism"]]


====Linux Kernel Sources / Prebuilt Kernels====
==== Update Kernel ====
* Mainline
* Please contact DH electronics if you need a binary.
:* [https://github.com/dh-electronics/linux-imx6qdl/tree/dev/4.4.60_dhcom 4.4.60 mainline (GitHub)]
: More on how to use it on the page [[DHCOM Update Mechanism|"DHCOM Update Mechanism"]]
:* [https://www.dropbox.com/s/ivtuwjhzaxoa94m/2017-07-25_imx6_4.4.60_boot.tar.bz2?dl=0 4.4.60 mainline prebuilt Kernel (prepared for boot partition)]
 
* Vendor
==== Debian based images ====
:* [https://github.com/dh-electronics/linux-imx6-vendor/tree/release/v4.1.15/20170405 4.1.15 vendor 2017-04-05 (GitHub)]
* Debian 10 "Buster" + Kernel 5.10.131 Release 2022-08-19
:* [https://www.dropbox.com/s/no1agbpp4b6gc0u/2017-04-05_imx6_4.1.15_boot.tar.bz2?dl=0 4.1.15 vendor prebuilt Kernel (prepared for boot partition)]
: Note: Devicetree is set to "imx6q-dhcom-pdk2.dtb" in uLinuxEnv.txt
:* [https://github.com/dh-electronics/linux-imx6-vendor/tree/release/v3.10.17/20170130 3.10.17 vendor 2017-01-30 (GitHub)]
 
:* [https://www.dropbox.com/s/2q2wtk3feqzcg71/2017-01-30_imx6_3.10.17_boot.tar.bz2?dl=0 3.10.17 vendor prebuilt Kernel (prepared for boot partition)]
:* [https://www.dropbox.com/s/5qr7mayxmh9egvf/HD00035_2022-08-19_imx6_buster_sdcard_2000MB.img.xz?raw=1 SD card: 2GB image (xz compressed)]
:: Open it with Disks by double click on Debian Linux. Use [https://www.balena.io/etcher balenaEtcher] on Windows.


==== Debian Rootfilesystem ====
:* [https://www.dropbox.com/s/r1tv1dmeqzt5gnl/HD00035_2022-08-19_imx6_buster_USB_stick_update.zip?raw=1 eMMC: USB stick update image]
* [https://www.dropbox.com/s/nlwv4vb96pu872a/2017-05-29_jessie-armhf-base-rootfs.tar.gz?dl=0 Debian rootfilesystem, based on Debian 8 "Jessie" (2017-05-29)]
:: Extract the files on a USB stick (MBR / FAT32) and insert it into your board / device. More about the files on the page [[DHCOM Update Mechanism|"DHCOM Update Mechanism"]]


* [https://www.dropbox.com/s/qbyid4j9nn784bu/2014-10-30_developer-rootfs_DN6_imx6.tar.bz2?dl=0 Debian rootfilesystem, based on Debian 6 "Squeeze" (2014-10-30)]<br/>''Remark:'' Shellshock (CVE-2014-6271) is already fixed.
* Debian 8 "Jessie" with Qt5.9.1 + Vendor Kernel 4.1.15 Release 2019-09-26


==== Virtual Machine for Application Development ====
:* [https://www.dropbox.com/s/18f4hsj3lhp6e5w/HD00039_2019-09-26_imx6_jessie_qt5.9.1_sdcard_2000MB.img.xz?raw=1 SD card: 2GB image (xz compressed)]
* [https://www.dropbox.com/s/e00hws89p79epze/Debian%20Jessie%20v1.3.zip?dl=0 Debian 8 "Jessie" VMware Image] <br/>Password for devel user: '''devel'''<br/>Password for root user: '''root'''
:: Open it with Disks by double click on Debian Linux. Use [https://www.balena.io/etcher balenaEtcher] on Windows.


* [https://www.dropbox.com/s/b9424pfoiik21dd/Debian%20Squeeze%20v1.5pw.zip?dl=0 Debian 6 "Squeeze" VMware Image (PW: dhelectronics)] <br/>Password for devel user: '''devel'''<br/>Password for root user: '''root'''
:* [https://www.dropbox.com/s/3c6b96g7ijzkoay/HD00039_2019-09-26_imx6_jessie_qt5.9.1_USB_stick_update.zip?raw=1 eMMC: USB stick update image]
:: Extract the files on a USB stick (MBR / FAT32) and insert it into your board / device. More about the files on the page [[DHCOM Update Mechanism|"DHCOM Update Mechanism"]]


==== Mainline Linux 4.4.x eMMC update package ====
Hint: You can also progam the eMMC by using the [[COM iMX6 Bootloader U-Boot#USB Mass Storage|U-Boot command "ums"]] (usable since U-Boot v2018.05)
* [https://www.dropbox.com/s/ttbsnqnjf8ypbqn/HD00035_2017-07-25_USBStick_eMMC_update_package.zip?dl=0 i.MX6 Linux Kernel 4.4.60 with Debian Jessie Rootfilesystem] <br/>Extract files to USB stick and use stick to update i.MX6 Solo, DualLite or Quad


==== Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more ====
== Download Linux code examples ==
* [[media:Demos_SPI_I2C_GPIO.zip|Download Code Examples SPI, I2C, GPIOs, RTC, UART, Watchdog, and more ]]  
==== [[Virtual Machine for Application Development#Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more|Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more]] ====
* [[media:DHCOM_HAL.zip|Download C++ HAL class library for SPI, I2C, GPIO, UART and physical address space access]]


== Download WEC ==
==== WEC7 DHHalLib.dll (function library) ====
==== WEC7 DHHalLib.dll (function library) ====
* [[media:DHHalLib_R04_2016_10_19.zip|Download DHHalLib Library Version 1.3.0.0]]
* [[media:DHHalLib_WEC7_R11_2022-05-11.zip|Download DHHalLib Library Version 1.3.0.7]]
* [[media:DHHalLib_Test_App_Source_R03_2016_10_19.zip|DHHalLib Demo App Source Code ]]
* [[media:DHHalLib_Test_App_Source_WEC7_R10_2022-04-06.zip|DHHalLib Demo App Source Code ]]
* [[media:DHHalLib_Test_App_Binary_R03_2016_10_19.zip|DHHalLib Demo App Binary File]]
* [[media:DHHalLib_Test_App_Binary_WEC7_R10_2022-04-06.zip|DHHalLib Demo App Binary File]]
* [[media:CSharp_LibWrapper_Source_WEC7_R09_2022-03-18.zip|Download DHHalLib CSharp Wrapper]]
* [[media:CSharp_LibWrapper.zip|Download DHHalLib CSharp Demo Wrapper App ]]
* [[media:CSharp_LibWrapper.zip|Download DHHalLib CSharp Demo Wrapper App ]]
* [[media:CSharp_LibWrapper_Binary.zip|Download DHHalLib CSharp Demo Wrapper App Binary File]]
* [[media:CSharp_LibWrapper_Binary.zip|Download DHHalLib CSharp Demo Wrapper App Binary File]]
Line 102: Line 130:


==== WEC2013 DHHalLib.dll (function library) ====
==== WEC2013 DHHalLib.dll (function library) ====
* [[media:DHHalLib_WEC2013_R07_2017_11_10.zip|Download DHHalLib Library Version 1.4.0.1]]
* [[media:DHHalLib_WEC2013_R12_2021-10-01.zip|Download DHHalLib Library Version 1.4.2.2]]
* [[media:DHHalLib_Test_App_Source_WEC2013_R05_2017_08_08.zip|DHHalLib Demo App Source Code ]]
* [[media:DHHalLib_Test_App_Source_WEC2013_R07_2018_06_12.zip|DHHalLib Demo App Source Code ]]
* [[media:DHHalLib_Test_App_Binary_WEC2013_R05_2017_08_08.zip|DHHalLib Demo App Binary File]]
* [[media:DHHalLib_Test_App_Binary_WEC2013_R09_2021-10-01.zip|DHHalLib Demo App Binary File]]
* [[media:CSharp_LibWrapper_Source_WEC2013_R06_2017_08_08.zip|Download DHHalLib CSharp Wrapper]]
* [[media:CSharp_LibWrapper_Source_WEC2013_R07_2021-10-01.zip|Download DHHalLib CSharp Wrapper]]
* [[media:CSharp_DHHalLib_Wrapper_App_Source_WEC2013_R05_2017_08_08.zip|DHHalLib C# Demo App Source Code]]
* [[media:CSharp_DHHalLib_Wrapper_App_Source_WEC2013_R05_2017_08_08.zip|DHHalLib C# Demo App Source Code]]
* [[media:CSharp_DHHalLib_Wrapper_App_Binary_WEC2013_R05_2017_08_08.zip|DHHalLib C# Demo App Binary File]]
* [[media:CSharp_DHHalLib_Wrapper_App_Binary_WEC2013_R05_2017_08_08.zip|DHHalLib C# Demo App Binary File]]

Latest revision as of 15:48, 21 June 2024

COM iMX6-D2

Hardware

  • Cortex-A9 Freescale i.MX6 Solo/DualLite/Dual/Quad up to 1.2GHz
  • 2D (GC320) / 3D (GC880/GC2000) graphics accelerator
  • 128 - 1024 MByte NAND flash memory (8 bit bus width) or
    4 - 16 GByte eMMC flash (8 bit bus width)
  • 2 MB SPI boot flash
  • 256 - 2048 MByte DDR3-1066 or DDR3-800
  • On module microSD card socket (4 bit SDIO) [1]
  • SD/MMC card interface, 4 bit SDIO
  • LC display controller, 24 bit colors, 2048x1536 pixels
  • LVDS 4-channel, max. 165 Mpixels/s
  • On-board touch controller for 4-wire resistive touch screens
  • Ethernet controller 10/100 Mbit, IEEE1588 conform
  • USB 2.0 OTG high-speed
  • USB 2.0 host high speed
  • Full function UART [2]
  • Standard UART with hardware handshake support
  • Standard UART


[1] On module microSD card socket is only available if second CAN port is not connected.
[2] CTS and RTS is only available if second CAN port is not connected.

  • 2x CAN interface [1][2]
  • 2x SPI interface
  • 2x I²C interface
  • I²S Audio codec (1 x microphone, 1 x Line in, 1x Line out)
  • Real-time clock (I²C connection), low power temperature compensated
  • 12 bit analog input
  • 128 Bytes EEPROM with integrated MAC address
  • 16 bit address/databus interface on SODIMM-200 socket
  • PWM channel
  • 24 GPIOs (A-W + INT_HI_PRIO)
  • JTAG debug connection via FFC plug connector
  • Industrial temperature range (-40°C to +85°C)
  • SODIMM-200 socket with DHCOM pin assignment

Product Change Notifications (PCN)

Software Support

BSP Sources

U-Boot

Linux Kernel

  • Mainline
  • NXP Vendor

Download binaries/images

U-Boot (for eMMC DHCOMs)

More on how to program it with the U-Boot command "update bootloader ..." on the page "DHCOM Update Mechanism"

Update Kernel

  • Please contact DH electronics if you need a binary.
More on how to use it on the page "DHCOM Update Mechanism"

Debian based images

  • Debian 10 "Buster" + Kernel 5.10.131 Release 2022-08-19
Note: Devicetree is set to "imx6q-dhcom-pdk2.dtb" in uLinuxEnv.txt
Open it with Disks by double click on Debian Linux. Use balenaEtcher on Windows.
Extract the files on a USB stick (MBR / FAT32) and insert it into your board / device. More about the files on the page "DHCOM Update Mechanism"
  • Debian 8 "Jessie" with Qt5.9.1 + Vendor Kernel 4.1.15 Release 2019-09-26
Open it with Disks by double click on Debian Linux. Use balenaEtcher on Windows.
Extract the files on a USB stick (MBR / FAT32) and insert it into your board / device. More about the files on the page "DHCOM Update Mechanism"

Hint: You can also progam the eMMC by using the U-Boot command "ums" (usable since U-Boot v2018.05)

Download Linux code examples

Code Examples for Userspace-Applications to Access SPI, I2C, GPIOs, and more

Download WEC

WEC7 DHHalLib.dll (function library)

WEC7 binary BSP

WEC2013 DHHalLib.dll (function library)