All pages
Powered by GitBook
2 of 7

Prerequisites

The NavQPlus is an embedded Linux device. You will need terminal access via a PC or Laptop in order to interface with the board. While a Windows PC can have terminal programs, you will find that working in a Linux host environment will allow you greater flexibility, capability and being able to cross compile software more easily. Most examples will be shown assuming a linux host PC running Ubuntu 22.04 or later is attached.

Ubuntu Desktop

Learn about installing Ubuntu Desktop on a development PC using the link below:

https://ubuntu.com/download

LogoGet Ubuntu | Download | UbuntuUbuntu

Supported Hardware

NavQPlus is a standalone embedded linux device. There are many peripherals that will attach and interface with it, or can be made to interface with the correct drivers. In addition, the Mobile Robotics team works with several complimentary devices and boards which work with the NavQPlus:

  • MR-B3RB (Buggy3 RevB): a robotics platform in the form of an ackermann steering small car

  • iRobot Create3: AKA Turtlebot 4, ROS development platform

  • RDDRONE-T1ADAPT: Adapter board from 100BaseT1 to RJ45

  • MR-T1ETH8: T1+RJ45 Ethernet Switch

  • MR-CANHUBK344: MCU board with S32K344, 6 CAN , T1 Ethernet

    • CANHUB-ADAP: plug on board with IMU and GPS connectors

  • MR-VMU-RT1176

    • Pixhawk V6X standard Vehicle Manangement Unit, with IMU

      • Note both NuttX and Zephyr Supported on this platform

  • RDDRONE-BMS772: Battery Management 6S

  • UCANS32K146: CAN Node board

  • HDMI displays (Many off the shelf small displays)

NavQPlus add on modules

NavQPlus is an open design and 3rd parties may create add-on modules

Contact the vendors below for more details:

Emcraft:

  • TOF camera from PMD

  • Several RPI camera modules

  • mini PCIe adapter

Google

  • Coral Cam

  • Coral TPU Neural net accelerator

Supported Software

Software available for NavQPlus

NavQPlus Enablement

NavQPlus has specific enablement that is not typically found in generic EVK's from NXP. The Ubuntu POC , ROS2 and other software has been enabled in order to work with robotics development systems. Consider using the a pre-built binary or following the 3rd party reference on building from source using a Docker image.

Opensource Community

While our team may have used and tested this software, the enablement is under continual development and is expected to change regularly. Where this software is application level (I.e ROS2), and not hardware device level (i.e gstreamer) you should look for opensource ommunity support for that application and not directly from NXP

Guidance

Elsewhere in this "engineering notebook" GitBook you will find specific guidance on how some of this software may be used. Specific software used in these examples will be noted.

OS/Software

Example NavQPlus typical OS images may include the following. (note that this configuration changes regularly and may be updated/upgraded to newer versions.)

  • NXP Yocto Linux 5.15 kernel

    • gstreamer

    • eIQ AI/ML tools

    • Ethernet over USB-C Gadget mode (SSH connection to laptop using USB cable)

  • Ubuntu 22.04 built on top of NXP Yocto 5.15

    • ROS2 Humble enabled

Yocto Linux

NXP i.MX 8M Plus Linux is a Yocto build plus Desktop image layer. Refer to the NXP GIT repo and NXP documentation when building from source.

Linux on NavQPlus is based on the EVK Yocto image, but has board specific DTS changes made and additioanl packages prepared for use as a robotics development tool. These have not made their way back into the NXP Yocto source tree. Building from scratch with Yocto will therefore be a more complex process.

To maintain the functionality of the NavQPlus as provided, please refer to one of the 3rd party images/source trees.

https://www.nxp.com/docs/en/user-guide/IMX_YOCTO_PROJECT_USERS_GUIDE.pdf

https://www.nxp.com/design/software/embedded-software/nxp-github:NXP-GITHUB/www.nxp.com
LogoGitHub - nxp-imx/meta-imx: i.MX Yocto Project i.MX BSP LayerGitHub

Other NXP EVK software

NavQPlus is a derivative of the NXP EVK. Refer to the NXP website for the complete variety of software support for i.MX 8M Plus

LogoSearch | NXP SemiconductorsNXP
LogoNXP GitHubNXP

Complete overview

For a complete view of all the software available for i.MX 8M Plus please refer to the NXP website here:

https://www.nxp.com/products/processors-and-microcontrollers/arm-processors/i-mx-applications-processors/i-mx-8-applications-processors/i-mx-8m-plus-arm-cortex-a53-machine-learning-vision-multimedia-and-industrial-iot:IMX8MPLUSwww.nxp.com

Build from Source (Docker Image)

Building from source using a docker image

Building the Linux image from source is complex and time consuming. A 3rd party has prepared a docker image which can be used and instructions to be followed in order to be successful in building from source without being an Expert. Please follow this guide in order to build the latest image from source, in a docker window. https://github.com/rudislabs/navqplus-images?tab=readme-ov-file#build-steps-for-current-image-release

Experimental Nature

Experimental nature

Because NavQPlus is experimental and contains a new set of boards and peripherals, please expect and plan for software enablement to undergo several iterations. Our intent is to provide an Ubuntu PoC (Proof of Concept) "user-friendly Linux" with typical packages and additional tools included, rather than the traditional Yocto-based distribution that is typical of the highly optimized and stripped down Linux operating systems used in deeply embedded products. Since this Ubuntu PoC is also built on top of Yocto, it is still able to be reduced and optimized for full commercial deployment as well.

Ubuntu Proof of Concept (Ubuntu POC)

Ubuntu PoC

The software available for the NavQPlus includes an Ubuntu Desktop environment based on Ubuntu opensource distribution as a Proof of Concept (PoC). It should be clearly noted that this Ubuntu PoC is NOT an official Canonical distribution.

Canonical outlines this mission philosophy of supporting free and opens software here:

https://ubuntu.com/community/ethos/mission

LogoOur Mission | UbuntuUbuntu

Canonical Ubuntu commercial support

Canonical does independently support commercial development on NXP i.MX processors and they are available on a contractual basis to provide commercial support for Canonical Ubuntu on NXP processors.

3rd Party Commercial Support

The NavQPlus was prepared in cooperation with one of our Gold partners Emcraft. It should be noted that various NXP partner program partners are available for commercial support including hardware and software support. Please refer to the NXP partner program webpages for further details: https://www.nxp.com/design/partner-marketplace:PARTNER-MARKETPLACE

LogoPartner MarketplaceNXP

https://www.nxp.com/webapp/connect/displayPartnerProfile.sp?partnerId=1-B6G0-5&offeringId=44513

LogoEmcraft Systems LLC | Partner Profile | NXP Semiconductors Inc.www.nxp.com