DTB Selection


Tip

All production G3 controllers now include an EEPROM that is factory programmed with the proper DTB for your module. This means the DTB setting will survive a full firmware image reflash or update.

The only time you should need to set the DTB on a production module is if you change the display type the controller is attached to, or the EEPROM becomes corrupted for some reason.

The G3 module controller card uses the same embedded Linux image regardless of which supported display or touch controller the specific module includes. In order to access the correct drivers for the display and touch hardware, the system must be told which binary device tree blob (DTB) it should use. This action is only required the first time a new image is flashed to an SD card or eMMC.1

Log in to the G3 module as root, then:

1# to select the DTB for your panel and touch controller
2root@imx6dl-g3-sd:~# fw_setenv mender_dtb_name <dtb-file-name.dtb>
3
4# to activate the selected DTB
5root@imx6dl-g3-sd:~# sync
6root@imx6dl-g3-sd:~# reboot

Footnotes:

1

In general, update releases are very infrequent so you may never need to flash a new image and set the DTB variable. Also, the vast majority of G3 modules are shipped pre-assembled with a display and touch controller. Unless you are ordering bare controller cards, the SD card shipped with the unit will have already had the DTB selected and the touch sensor calibrated.

The following tables list the available DTBs as of the writing of this document.

G3BNG Available Device Tree Blobs (DTBs)

Panel Size

Touch Sensor

DTB File

5.7"

Resistive (Evervision)

imx6dl-g3-5p7-vga-lcd-tsc2046.dtb

5.7"

Resistive (KOE)

imx6dl-g3-5p7-vga-ldb-tsc2046.dtb

7"

PCAP

imx6dl-g3-7-wvga-lcd-focaltech.dtb

7"

Resistive

imx6dl-g3-7-wvga-lcd-tsc2046.dtb

7"

Resistive (KOE)

imx6dl-g3-7-wvga-ldb-tsc2046-inv.dtb

10.1"

PCAP

imx6dl-g3-10p1-wxga-ldb-focaltech.dtb

10.1"

Resistive

imx6dl-g3-10p1-wxga-ldb-tsc2046.dtb

10.4"

PCAP/HID

imx6dl-g3-10p4-xga-ldb-egalax.dtb

12.1"

PCAP/HID

imx6dl-g3-12p1-wxga-ldb-amtouch.dtb

G3MSB Available Device Tree Blobs (DTBs)

Panel Size

Touch Sensor

DTB File

4.3" WQVGA

Resistive (Innolux)

stm32mp1-g3msb-4p3-wqvga-tsc2046.dtb

4.3" WQVGA

PCAP (Microtips)

stm32mp1-g3msb-4p3-wqvga-focaltech.dtb

4.3" WVGA

PCAP (Microtips)

stm32mp1-g3msb-4p3-wvga-focaltech.dtb

5" WVGA

Resistive (Microtips)

stm32mp1-g3msb-5-wvga-tsc2046.dtb

G3MSG Available Device Tree Blobs (DTBs)

Panel Size

Touch Sensor

DTB File

4.3" WQVGA

Resistive (Innolux)

stm32mp1-g3msg-4p3-wqvga-tsc2046.dtb

4.3" WQVGA

PCAP (Microtips)

stm32mp1-g3msg-4p3-wqvga-focaltech.dtb

4.3" WVGA

PCAP (Microtips)

stm32mp1-g3msg-4p3-wvga-focaltech.dtb

5" WVGA

Resistive (Microtips)

stm32mp1-g3msg-5-wvga-tsc2046.dtb

As an example, to select the proper DTB for a G3BNG with a 7” display and a PCAP touch sensor:

1# to select the DTB for 7" PCAP
2root@imx6dl-g3-sd:~# fw_setenv mender_dtb_name imx6dl-g3-7-wvga-lcd-focaltech.dtb
3
4# to activate the selected DTB
5root@imx6dl-g3-sd:~# sync
6root@imx6dl-g3-sd:~# reboot

Once your G3 module reboots for the first time after selecting the appropriate DTB, you will have to calibrate the touch sensor. This process starts automatically at the first reboot. The calibration program draws a series of five boxes with internal crosshairs, one at a time. Simply touch the panel at each crosshair as it is displayed. Once the calibration is complete, the G3 module will complete its normal boot process.

../../_images/calibration.jpg

Touch Sensor Calibration Application

Note

The touch sensor calibration application looks different on images that support X11 for the end product application GUI. In the X11 environment, the calibration application is a standard X11 application rather than a direct framebuffer application.