arrow-left

All pages
gitbookPowered by GitBook
1 of 10

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Loading...

Power supply options

Powering NavQPlus

triangle-exclamation

NEVER use USB-C to USB-A cables without a hub or blocking device. In this embedded platform software has complete control over USB-PD and it is POSSIBLE to provide power >5V on the USB-C connector without handshaking. USB-A is only 5V tolerant and this can damage certain devices.

There are two ways to power the NavQPlus. You can power it through the PWR IN port or through the middle* USB-C port (*dependent on software image loaded)

circle-info

It is preferred to power the board through the PWR IN port for highest reliability.

This is because it is possible that the USB-C power management logic may be configured in software in a manner that limits current or resets the power management in the time between the bootloader running and the Linux image running . This leads to unexpected behavior at power up. If you suspect something unusual is occurring on power up or you see the board rebooting, please try powering through PWR_IN first.

The PWR IN port accepts an input in the 5V-20V* range. (Technically higher (24V?), but has not been fully validated or characterized)

The PWR IN port pinout schematic is as follows: (center pin is unused). Pin 1, 2 are the power input, Pin 4, 5 are negative (GND).

The input power voltage connection PWR_UNREG is 5V-20V

hashtag
Unexpected Power Resets

If you encounter unexpected resets, it could be any of the following issues

hashtag
Insufficient Current Available:

That your power supply is not able to provide enough current for the board or the board + peripherals resulting in a brownout condition when internal blocks, interfaces, peripherals turn on and draws additional current.

Supplying power with a LiPo battery may help debug if you have a bench or wall adapter power supply limitation.

hashtag
Power Glitch from other boards:

The PWR IN port is connected to an onboard power control switch that can sense reverse current spikes on the power supply and de-assert a power good signal, causing a reset. This may happen when another device is sharing the power supply and "glitches" the power supply when plugged in live. A reverse blocking diode and additional bulk capacitors on a power distribution board or inline with the power cable may be desired.

hashtag
Linux Image problems:

As mentioned above, when powering from USB-C, the specific Linux image should be checked to ensure that the Linux Kernel is not resetting the USB power when it starts up after the bootloader is completed. (i.e the bootloader configures USB-C, then the Linux Kernel may also be set to re-configure/reset the USB-C also and in the process switching it off again.

Additional Boot Details

How to boot the board

NavQPlus should boot normally after applying power. While booting, the device will output detailed status information to the serial console, accessible on the UART2 connector. Using the console can provide invaluable debugging information that is difficult to find elsewhere. Once the boot process has completed, the system console is also available by starting an SSH session over (USB-)ethernet or Wi-Fi.

circle-info

There are DIP switches on board that select the boot source as either SD card or on-board eMMC memory. Ensure their settings match your intentions.

hashtag
Power requirements for successful boot

If the applied voltage at PWR_IN is too low, the boot process could hang upon initializing the CPU in the Linux kernel. Please make sure that your power input is 5-20V. The NavQPlus has relatively low current requirements and typically will not draw more than 4 watts of power when all on-chip peripherals are enabled, however the board may also supply power to external devices. Ensure that your power source is able to maintain a stable voltage level at the requested current.

circle-exclamation

If powering from USB-C it is possible with some Linux kernel/boot configurations that the USB-C port hardware is limiting current, or switches modes as software progresses. This may result in a hang or a reboot. If you suspect this is the case, try powering from the PWR_IN port instead.

hashtag
U-Boot - Observe full boot process through the serial console

The boot process starts with U-Boot, loading the device trees in the boot partition and loading the Linux kernel. If you desire to observe the complete boot process, you will need to monitor the output on by using the provided USB to serial converter cable.

hashtag
Shell login

Once the NavQPlus has booted to the shell, the default login credentials are as follows:

Username: user Password: user

serial console
UART2

Wired Network connections

Connecting the NavQ+ with ethernet

The NavQPlus has the ability to connect via ethernet in several different ways.

triangle-exclamation

NEVER use USB-C to USB-A cables without a hub or blocking device. In this embedded platform software has complete control over USB-PD and it is POSSIBLE to provide power >5V on the USB-C connector without handshaking. USB-A is only 5V tolerant and this can damage certain devices.

  • Through the IX Industrial® Type A port. The provided IX to RJ45 adapter cable will allow connecting to RJ45 *Preferred

  • Using the USB-C port with "gadget bode" Ethernet over USB

  • Through the 100 Base T1 automotive ethernet. A media converter such as RDDRONE-T1ADAPT, or a switch such as MR-T1ETH8 would allow connection to a typical RJ45 100Base-T port.

  • Using a USB-C Ethernet adapter dongle

hashtag
USB to Ethernet Adapter

Here is an example of how the NavQ+ can also be connected through the USB-C port. For this method, a separate adaptor is required to convert the USB-C to RJ45.

To be able to connect to the board through SSH it must be connected to the same network. This is possible by using a router and connecting your network cable to it then the NavQ+ and your PC to it. With this connection SSH can be established between your PC and the NavQ+. Below is an example of how the router could be connected.

circle-exclamation

Not all USB to Ethernet adapters are supported . In some cases you may also find that the board reboots when powering up with an unsupported adapter. While still sub-optimal, you can try circumventing the reboot by unplugging the ethernet and letting the board boot first. Once it is booted up you can retry attaching the adapter and connecting ethernet.

After everything is connected correctly a connection can be made through SSH. This is done with the following code, on your PC terminal:

or you can input the IP address of your NavQ+:

You will be asked to input the password.

The default password is user.

circle-info

You can also find your IP address using the command: ifconfig

At this point you may want to consider following steps to connect the NavQPlus WiFi to a local network.

Wireless Networking

hashtag
Configuring WiFi, System Hostname, Username or Password

hashtag
Configuring WiFi on NavQPlus

To connect NavQPlus to a WiFi network, use the nmcli command. The interface is relatively straightforward, to connect with nmcli, run the following command:

If struggling to connect to a network, see if it is visible by running:

Once connected to the WiFi network the NavQPlus will continue to connect to that network even after a reboot.

hashtag
About nmcli

The netowork connections will be saved and NavQPlus will automotically connect to these networks when they are present. Note that the priority of connections can be set as well as removing connections. For more information see the nmcli linux command.

hashtag
What wifi network is the NavQPlus currently connected to?

To see what Wifi network the NavQPlus is currently connected to run without sudo:

nmcli device wifi list

Or if running with sudo it will be the network preceeded with a star.

hashtag
Connecting to NavQPlus over WiFi

Once setup to connect over a local WiFi network, SSH into the NavQPlus over WiFi by running:

Or depending on network setup:

Serial Console

Connecting to the serial console

The NavQPlus kit comes with an FTDI type USB-C to UART adapter cable and a small adapter board for this cable to the serial port JST-GH connector . This adapter is used for a serial debugging console on the NavQPlus.

hashtag
USB to UART adapter

Executive Summary: Connect the included USB to UART adapter to the UART2 port on the NavQPlus, and open your favorite serial console application (e.g. PuTTy for Windows users, Minicom on Linux). Open a serial console and set the baud rate to 115200. If there is no output on the screen, try to press enter to get a log-in prompt.

USB to serial cable and adapter board (Not exactly as shown)

Connect USB cable+ adapter to your computer. Then plug in the JST-GH connector from the adapter into UART2 (A53 Debug/Console) port on NavQPlus.

hashtag
Serial Terminal Software

Use your favorite serial console software such as PuTTY (Minicom, MobaXTerm, or screen) to access the NavQPlus serial console directly.

hashtag
Console Baud Rate

The baud rate is 115200.

circle-info

The serial console may be used to observe the full boot sequence including uboot. BONUS!: The terminal program on your PC should not disconnect on reboot or reset of the NavQPlus since the connection at the PC is really to the USB-UART adapter board (inside the TTL-232R-USB cable).

hashtag
Successful Boot?

If correct code was loaded, and the boot switches also set back to the correct boot source (SDCARD vs EMMC), then in the terminal software you should see the Linux boot details printing out.

hashtag
Default username and default password

The system will ask for the username and then the password. The default username/password is as follows:

At this point you can start using Linux on the NavQPlus.

Flashing new firmware

Changing the NavQPlus firmware and booting from SD Card or EMMC flash

hashtag
Introduction

When new images are released, we will provide a link to them. To flash NavQPlus, normally there are two options. You can either flash the eMMC chip on-board, or flash the SD card included with the kit. The eMMC runs faster but is not removable like the SD card. The SD card is easily removeable and can be programmed quickly and directly from a PC. It is up to you to choose which one to use.

hashtag
NXP Images

The official source for linux on NavQPlus *will eventually be NXP Linux Factory, however at the time of this writing it is a work in progress.

triangle-exclamation

This NXP Linux Factory enablement is a work in progress. Meanwhile, links to images that can be downloaded and used on the NavQPlus are provided below. Building from scratch using NXP Linux Factory and Yocto requires some advanced knowledge and is not documented at this time. NavQPlus is similar to the 8MPlus EVK, but with some minor changes to the memory type, and the dtb files describing the board interfaces.

See below for instructions on how to flash the SD card or eMMC.

hashtag
Third party images

The following images are prepared by 3rd parties and support the NavQPlus.

  • For use with iRobot Create3 (AKA Turtlebot4)

  • For use with NXP MR-B3RB

hashtag
Emcraft Release Images

hashtag
Voxelbotics Release Images:

hashtag
Rudis Labs Images:

hashtag

hashtag

hashtag

hashtag
Flashing image to an SDCard

The NavQPlus typically comes with a 16GB SD card or larger that you can flash with the pre-built Ubuntu 22.04 image. See below for instructions to flash your SD card on each platform.

circle-info

You must have an SD card reader available on your system to perform these instructions. Low-cost USB dongles or hubs with SD Card slots are available.

hashtag
Flashing SD card using Windows PC

Several free programs are available to flash an SD card with an image, we use .

Once you have downloaded Win32DiskImager, insert your SD card into your computer, open the program, and select the navqplus-image-{vX.X}.wic file as your image.

Next, select your SD card under Device.

triangle-exclamation

Make CERTAIN that your Device selection is the correct drive letter for your SD card!!! You don't want to erase your hard drive! Only click "Write" after double checking for the correct drive letter!

Once the flashing process has finished, you should get a message saying that the write was successful.

hashtag
Flashing SD card using Linux / Mac

To flash your SD card with the image you downloaded in step 1, we suggest using dd.

To do this, open a terminal and navigate to the folder that you downloaded the

navqplus-image-{vX.X}.wic file.

Once you are there, insert your SD card, and find the device path for it. Typically, it will be something like /dev/sdX on Linux or /dev/diskX on Mac.

triangle-exclamation

Be VERY careful that you select the correct drive path when using dd to flash your SD card. You can confirm with the "Disks" app on Ubuntu or the "Disk Utility" app on Mac.

Once you have found your device path, run the following command in your terminal to flash the SD card:

hashtag
Linux:

hashtag
Mac:

Once this is done, your SD card will be flashed with the image.

hashtag
Set Boot Switches for SD Card Boot

  • Remember to check that your are set to boot from SD.

hashtag
Flashing the eMMC

hashtag
(Flashing eMMC using uuu utility)

To flash the eMMC on your NavQPlus, you will need to download , a tool created by NXP to flash NXP boards. Make sure to download the correct application for your platform. The file titled "uuu" with no file extension is a binary file for use on x86/64 Linux.

  • After downloading uuu, find the on your NavQ+ and flip them to the "Flash" mode.

  • Connect NavQ+ to your computer using the centermost USB-C port.

  • Run the following command to make sure that the NavQ+ is recognized by uuu:

<TODO: Add image of output>

  • You should see that there is a device detected. If so, you can continue flashing. To flash your board, use one of the commands below depending on how the image was supplied:

circle-info

When flashing the EMMC an additional .bin file is needed in addition to the .wic file. Recently was upgraded so these two files can now be included in a single zip and used without uncompressing. You may be supplied the .zip or the two separate files.

hashtag
EMMC image supplied in .zip format then:

hashtag
EMMC image supplied as .bin and .wic files:

circle-check

The SDCARD image also has a .wic file extension, so be sure you are using the correct file! You cannot flash this to EMMC without the corresponding .bin file, but you can use the EMMC .wic file to program an SDCARD, it is the same image.

  • Once this process has finished, make sure that the flash was successful by comparing to the image below. If so, configure your to boot from eMMC.

TODO: Add image

WiFi - nmtui

Setting up the NavQ+ to connect to WiFi

hashtag
Configuring WiFi on NavQPlus

An alternative tool to connect NavQPlus to your local Wi-Fi network is the nmtui command. This command presents a GUI in your terminal to connect to Wi-Fi. The interface is relatively straightforward. To run nmtui, run the following command:

sudo nmtui

The preferred method as mentioned earlier is to use the non-GUI way to connect to Wi-Fi or manage your network connections, use nmcli by running the following command:

Once you are finished connecting to your local WiFi network, you can exit the application. Your NavQPlus will continue to connect to this WiFi network even after a reboot.

https://manpages.ubuntu.com/manpages/noble/en/man1/nmcli.1.htmlarrow-up-right
sudo nmcli device wifi connect <network_name> password "<password>"
sudo nmcli device wifi connect <network_name> password "<password>"
sudo nmcli device wifi list
ssh <username>@<hostname>.local
ssh <username>@<hostname>
Example of the USB-C ethernet connection.
The PC and the NavQ+ connected to the same router.
https://www.emcraft.com/products/1222#releasesarrow-up-right
https://staging.voxelbotics.com/releases/arrow-up-right
https://github.com/rudislabs/navqplus-create3-images/releases/arrow-up-right
Win32DiskImagerarrow-up-right
boot switches
uuuarrow-up-right
boot switches
the latest uuuarrow-up-right
boot switches
ssh user@imx8mpnavq.local
ssh user@<NavQ+'s IP address>
Username: user 
Password: user 
sudo dd if=navqplus-image-{vX.X}.wic of=/dev/sdX bs=1M status=progress oflag=sync
sudo dd if=navqplus-image-{vX.X}.wic of=/dev/diskX bs=1m status=progress oflag=sync
./uuu[.exe] -lsusb
sudo ./uuu navqplus-image-{vX.X}_.zip
sudo ./uuu[.exe] -b emmc_all navqplus-image-{vX.X}.bin -flash_evk navqplus-image-{vX.X}.wic

Camera Usage

Take an image using the camera

NavQPlus models typically ship with one Omnivision camera module which is either from Innowave or Google Coral Camera. 3rd parties may also have other cameras. An additional camera can also be added to the second MIPI port. Note that other USB or Ethernet cameras can also supply image data to the NavQPlus. Please refer to NXP.com documentation for i.MX 8M Plus for details on camera usage in LInux.

hashtag
Video example using gstreamer

To take an image using an attached MIPI camera module on NavQPlus, use the gstreamer command. An example command is as follows:

sudo gst-launch-1.0 -v v4l2src device=/dev/video3 num-buffers=1 ! jpegenc ! filesink location=capture1.jpeg

Boot DIP Switches

Using DIP switches to set boot source

hashtag
Boot Switches Configuration

NavQPlus can be configured to boot from either SD card or eMMC. It also has a flash mode that allows you to flash either the eMMC or SD card over USB-C®. See the table below for the boot switch configuration.

Mode
Switch 1
Switch 2
circle-info

(NOTE: This boot switch table is referenced from several locations in this gitbook)

SD

ON

ON

eMMC

OFF

ON

Flash

ON

OFF

GitHub - rudislabs/meta-navqplus-apt-ros: NavQPlus base board with ROS 2 releasesGitHubchevron-right
Releases · rudislabs/navqplus-create3-imagesGitHubchevron-right
Releases · rudislabs/navqplus-create3-imagesGitHubchevron-right
Logo
Logo
Logo

Typical NavQPlus Interface usage

hashtag
Introduction

This chapter will cover the basics of connecting to the NavQPlus.

For a quick setup guide follow the instruction on the . For more detailed information follow the section.

previous chapter
hardware reference