C

Boundary Devices i.MX6 Boards

Take the following steps when preparing these boards for Boot to Qt:

Note: It is important that you repeat the steps in this section after you update Qt for Device Creation.

The images containing the Boot to Qt stack for the device are included in Qt for Device Creation, ready to be copied to an SD card.

Preparing an SD Card

For Boot to Qt for embedded Linux, an SD card of at least 1 GB capacity is needed.

Plug in the SD card or reader to the development host, and use the following command on Linux to find out its device name:

lsblk -d

Removable devices such as SD cards have the value '1' in the RM column.

Typical device names for SD cards include sdb and mmcblk0. The full device path is /dev/ followed by the name.

On Windows, use the following command to get the SD cards device name:

wmic logicaldisk where "drivetype=2 and access=0" get deviceid, volumename

Warning: Make sure to select the correct device, because selecting the wrong one can result in a wiped hard drive.

Installing the Boot to Qt Image

Install Using the Flashing Wizard

Qt for Device Creation includes an easy to use application for setting up a supported device for Boot to Qt. In Qt Creator, select Tools > Flash Boot to Qt Device and follow the step-by-step instructions.

On Linux, you can alternatively install the image from the command line using the instructions below.

Install from the Command Line

Make sure you have the required tools installed in your development machine:

sudo apt-get install u-boot-tools

Then, upgrade the SD card with Boot to Qt. First, ensure that no partitions on the SD card are mounted:

umount /dev/<device_name>

Then, use the following command to install the embedded Linux image:

cd <INSTALL_DIR>
sudo dd bs=4k if=5.6/Boot2Qt/nitrogen6x/images/b2qt-embedded-qt5-image-nitrogen6x.img of=/dev/<device_name>

After the installation is complete, insert the SD card, power on the device and check that the Boot to Qt welcome screen and/or demo appear.

Updating U-Boot

If you are updating from an older image, you may also need to update the version of U-Boot on the device. The prebuilt image already contains U-Boot versions for most of the device variants from Boundary Devices, but the update needs to be done manually when first starting the device. Correct device type is selected by setting the uboot_defconfig U-Boot environment variable. More information available from Boundary Devices.

Access the device's console and run the following commands on the U-Boot prompt:

setenv uboot_defconfig <device type>
run upgradeu

Reset or power cycle the device to start the new U-Boot. To reset the U-Boot environment to new default values, enter the following commands in the U-Boot command line

env default -a
saveenv

Setup for Nitrogen6_Lite Device

The boot script requires the environment variables, dtbname and gpumem, to identify the device as Nitrogen6_Lite. Otherwise, the device is booted with the default GPU memory setting of 512MiB, which is more than what is available on the Nitrogen_Lite devices (128MibB).

Use one of the two following options to enable the scripts boot the device with correct GPU memory setting:

  • Write a uEnv.txt file on to the boot partition of SD card with the following content:
    gpumem=67108864
    dtbname=imx6dl-nit6xlite.dtb
  • Access the device's console and run the following commands on the U-Boot prompt:
    U-Boot > setenv gpumem 67108864
    U-Boot > setenv dtbname imx6dl-nit6xlite.dtb
    U-Boot > saveenv

Setting up USB Access

On Ubuntu Linux, the development user account must have access to plugged in devices. To allow the development user access to the device via USB, create a new udev rule:

  1. Run the following command in a shell:
    echo 'SUBSYSTEM=="usb", ATTRS{idVendor}=="18d1", TAG+="udev-acl", TAG+="uaccess"' | sudo tee -a /etc/udev/rules.d/70-boot2qt.rules
  2. Connect the running device to the development host with a USB cable. If the device is already connected, disconnect and reconnect the USB cable after running the command above.

The system log files /var/log/udev and /var/log/syslog may provide relevant information in case of connection problems.

You can confirm that the connection is working by running the following command on Linux:

<INSTALL_DIR>/Tools/b2qt/adb devices -l

On Windows, you need to install ADB as instructed in 1.2 Windows: Installing ADB. You can confirm that the connection is working with the following command:

<Android-SDK-Tools-install-dir>\platform-tools\adb.exe devices -l

The output should be a list of connected Boot to Qt (and Android) devices, identified with a serial number and a name. If your device is missing from the list, or the serial number is ??????, the connection is not working properly. Check that the device is powered on, and disconnect and reconnect the USB cable.

The emulator may be listed as well. Its serial number is its IP and the port number: 192.168.56.101:5555.

Configuring a Device Kit in Qt Creator

After you have prepared the hardware, you must perform one final step to set up the development tools in Qt Creator for your device. That is, you must configure the correct device to be used for each build and run kit. Connect your device to the development host via USB and launch Qt Creator. In Qt Creator:

  1. Select Tools > Options > Build & Run > Kits.
  2. Select one of the predefined kits starting with Boot to Qt... that matches the type of your device.
  3. Select the correct device in the Device field.
  4. Select OK.

You are now ready to start developing for your device. For more information, see Building and Running an Example.

Available under certain Qt licenses.
Find out more.