MR-VMU-Tropic — Deploy and Run Quick Start

MR-VMU-Tropic is a PX4/NuttX flight controller on an i.MXRT1064. Flash the bootloader and the application to external QSPI flash with LinkServer (MCU-Link). The two images go to fixed offsets in the RT1064 flash region.

Get the artifacts first

Every platform assumes the images are already available — either downloaded or built with the SDK:

# prebuilt (fastest)
west sdk download --platform mr-vmu-tropic      # lands in <west topdir>/bin/mr-vmu-tropic/

# or build from source
west sdk build    --platform mr-vmu-tropic  # lands in <west topdir>/{build,bin}/...
  • Docker required. Downloading and building are done inside a Docker container built from the SDK’s Dockerfile — see the robotics-sdk README for how to set it up. All west commands are assumed to run inside that container.

  • The SDK builds/downloads images but does not flash them — deployment is done with each platform’s native tool.

  • Where do the artifacts land? <west topdir> is the west workspace root — the directory containing .west/, created by west init. The bin/ directory is created next to the robotics-sdk/ clone, not inside it:

<west topdir>/
├── .west/
├── robotics-sdk/         <- the SDK clone (west init -l)
├── build/                <- west sdk build intermediates
└── bin/mr-vmu-tropic/       <- final artifacts land here

For MR-VMU-Tropic the platform is mr-vmu-tropic. Run west sdk list for the authoritative list.

Artifacts

  • <west topdir>/bin/mr-vmu-tropic/nxp_mr-tropic_bootloader.bin — bootloader (@ 0x70000000)

  • <west topdir>/bin/mr-vmu-tropic/nxp_mr-tropic_default.bin — application firmware (@ 0x70020000)

  • <west topdir>/bin/mr-vmu-tropic/nxp_mr-tropic_default.px4 — PX4 firmware container (for QGroundControl / PX4 uploader)

Flash with LinkServer

Use this route for the initial bring-up — it programs the PX4 bootloader (needed only once, on a blank board) and, optionally, a first application image directly to QSPI. Once the bootloader is present, prefer the PX4 firmware upload route below for routine application updates.

  1. Flash the bootloader (first time / blank board)

    LinkServer flash MIMXRT1064xxxxA:EVK-MIMXRT1064 load \
        --addr 0x70000000 nxp_mr-tropic_bootloader.bin
    
  2. Flash the application

    LinkServer flash MIMXRT1064xxxxA:EVK-MIMXRT1064 load \
        --addr 0x70020000 nxp_mr-tropic_default.bin
    
  3. Reset & run

    Reset the board; the bootloader chainloads the app at 0x70020000.

Erase all flash (recovery)

LinkServer flash MIMXRT1064xxxxA:EVK-MIMXRT1064 erase

Use this to wipe the QSPI flash before a clean re-flash.

Zephyr

The MR-VMU-Tropic platform also publishes Zephyr sample images for board bring-up and peripheral checks:

<west topdir>/bin/mr-vmu-tropic/zephyr/<sample>/zephyr.bin

where <sample> is any one of hello_world, gpio, bmi08x_icm45686, bmm350, bmp390, pwmLED, can, sdcard, dhcpv4_client, usb, watchdog, rtc.

Flash one with the same LinkServer command, at the flash base:

LinkServer flash MIMXRT1064xxxxA:EVK-MIMXRT1064 load \
    --addr 0x70000000 zephyr.bin