This design guide is intended to minimize the development risk of an own baseboard and also the software adaptation effort.
We therefore recommend that you copy the functions you need 1:1 from the reference schema.
PREVIEW
For a reference schematic contact our sales group.
The following guidelines must be observed for the support of our Standard SOM CODESYS Images.
Used features in standard images:
Default Bootloader:
-
microSD Card Slot
-
Debug Port
-
USB
-
ENET1
Image Update over USB is only supported if a valid rescue system (bootloader, rescue partition) is installed on the internal flash.
Default Device Tree Files used Features:
|
Name |
Based Board Layout |
microSD Card |
DEBUG PORT |
STATUS LED |
USB |
LED2 |
LED3 |
ENET1 |
ENET1/2 |
RTC |
BUZZER |
AIN |
I2C |
SPI+CS |
nvSRAM |
RS232 |
RS485 |
CAN |
DISPLAY |
BACKLIGHT |
TOUCH |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
imx6ul-2-s.dtb |
40099 147 / 195x 1461, (deprecated!)
|
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
|
|
|
|
imx6ul-2-s-43.dtb |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
|
|
|
|
|
imx6ull-s.dtb |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
|
|
|
|
|
imx6ull-s-512.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
|
|
|
|
|
imx6ull-s-512-43.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
x (4.3'') Admatec, T043C004800272T2A |
x |
x |
|
|
imx6ull-s-512-50.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
x (5'') Admatec, T070P133T0S301 |
x |
x |
|
|
imx6ull-s-512-80.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
|
x |
x (8'') Innolux, EE080NA-06A |
x |
x |
|
|
imx6ul-2-k.dtb |
|
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
|
|
|
|
imx6ul-2-k-512.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
|
|
|
|
|
imx6ull-k.dtb |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
|
|
|
|
|
imx6ull-k-512.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
|
|
|
|
|
imx6ull-k-512-50.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x (5'') Admatec, T070P133T0S301 |
x |
x |
|
|
imx6ull-k-64kfram-512.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x (64k) |
x |
x |
x |
|
|
|
|
|
imx6ull-k-64kfram-512-50.dtb (512MB Flash) |
x |
x |
x |
x |
x |
x |
|
x |
x |
x |
x |
x |
|
x (64k) |
x |
x |
x |
x (5'') Admatec, T070P133T0S301 |
x |
x |
Required Features
|
Name |
Description |
Connection imx6ul/ull |
Connection imx8mm |
Supported in Default Device Tree Files |
|---|---|---|---|---|
|
microSD Card Slot |
A microSD card slot is mandatory.
|
SD1 |
reference schematic |
Yes |
|
BOOT_MODE0/1 |
Use the same wiring as in the reference schematic. |
BOOT_MODE |
reference schematic |
Yes |
|
RESET_IN |
Use the same wiring as in the reference schematic. Or follow the ul/ull guide line. |
reference schematic |
reference schematic |
Yes |
Recommended Design Guidelines
|
Name |
Description |
Connection imx6ul/ull |
Connection imx8mm |
Supported in Default Device Tree Files |
|---|---|---|---|---|
|
Status LED |
The status led is used to detect in which operations are performed.
|
reference schematic |
reference schematic |
Yes |
|
Debug Port |
Use the same wiring as in the reference schematic. A adapter can also be provided here for a more cost-effective production. |
reference schematic |
reference schematic |
Yes |
|
ENET1 |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
No A own developed Device Tree File is needed. (There is no file in the delivery) |
|
ENET1/2 |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
RTC |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
Display |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes (displays: ...) |
|
Backlight |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
Touch |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
Buzzer |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
AIN |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
I2C |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
nvSRAM |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes type |
|
RS232 |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
RS485 |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
CAN |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
USB |
Use the same wiring as in the reference schematic. |
reference schematic |
reference schematic |
Yes |
|
GPIO |
Not used Pins can be used as gpio's Follow the ul/ull guide line. |
reference schematic |
reference schematic |
Yes Depending on the functions used, a own developed Device Tree File is needed. |
SPI
Depending on the functions used, a own developed Device Tree File is needed.
Example:
// SPI1 sram
&ecspi1 {
fsl,spi-num-chipselects = <2>;
cs-gpios = <
&gpio4 25 0
&gpio5 3 0
>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi1>;
status = "okay";
fram@0 {
compatible = "atmel,at25";
reg = <0>;
spi-max-frequency = <20000000>;
spi-cpha;
spi-cpol;
pagesize = <1>;
size = <8192>;
address-width = <16>;
};
spidev@0x01 {
compatible = "spidev";
reg = <1>;
#address-cells = <1>;
#size-cells = <0>;
spi-max-frequency = <500000>;
};
};
// SPI4
&ecspi4 {
fsl,spi-num-chipselects = <9>;
cs-gpios = <
&gpio2 15 0
&gpio3 11 0
&gpio3 18 0
&gpio3 25 0
&gpio3 3 0
&gpio3 10 0
&gpio3 17 0
&gpio3 24 0
&gpio3 2 0
>;
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_ecspi4>;
status = "okay";
spidev@0x00 {
compatible = "spidev";
reg = <0>;
spi-max-frequency = <20000000>;
};
spidev@0x01 {
compatible = "spidev";
reg = <1>;
spi-max-frequency = <20000000>;
};
spidev@0x02 {
compatible = "spidev";
reg = <2>;
spi-max-frequency = <20000000>;
};
spidev@0x03 {
compatible = "spidev";
reg = <3>;
spi-max-frequency = <20000000>;
};
spidev@0x04 {
compatible = "spidev";
reg = <4>;
spi-max-frequency = <20000000>;
};
spidev@0x05 {
compatible = "spidev";
reg = <5>;
spi-max-frequency = <20000000>;
};
spidev@0x06 {
compatible = "spidev";
reg = <6>;
spi-max-frequency = <20000000>;
};
spidev@0x07 {
compatible = "spidev";
reg = <7>;
spi-max-frequency = <20000000>;
};
spidev@0x08 {
compatible = "spidev";
reg = <8>;
spi-max-frequency = <20000000>;
};
};
pinctrl_ecspi4: ecspi4grp {
fsl,pins = <
MX6UL_PAD_ENET2_TX_CLK__ECSPI4_MISO 0x100b1
MX6UL_PAD_ENET2_TX_EN__ECSPI4_MOSI 0x100b1
MX6UL_PAD_ENET2_TX_DATA1__ECSPI4_SCLK 0x100b1
MX6UL_PAD_ENET2_RX_ER__ECSPI4_SS0 0x100b1 /* CS0 gpio2 15 */
MX6UL_PAD_LCD_DATA06__GPIO3_IO11 0x100b1 /* CS1 gpio3 11 */
MX6UL_PAD_LCD_DATA13__GPIO3_IO18 0x100b1 /* CS2 gpio3 18 */
MX6UL_PAD_LCD_DATA20__GPIO3_IO25 0x100b1 /* CS3 gpio3 25 */
MX6UL_PAD_LCD_VSYNC__GPIO3_IO03 0x100b1 /* CS4 gpio3 3 */
MX6UL_PAD_LCD_DATA05__GPIO3_IO10 0x100b1 /* CS5 gpio3 10 */
MX6UL_PAD_LCD_DATA12__GPIO3_IO17 0x100b1 /* CS6 gpio3 17 */
MX6UL_PAD_LCD_DATA19__GPIO3_IO24 0x100b1 /* CS7 gpio3 24 */
MX6UL_PAD_LCD_HSYNC__GPIO3_IO02 0x100b1 /* CS8 gpio3 2 */
>;
};
Creating Custom Device Tree File
The device description can be created and tested directly in the webconfig.
For this you can simply install the package systemwebconfig-dtceditor via the package manager.
Available soon...