Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Nexperia Logo

NEVC-MTR1-GUI: GUI for the NEVB-MTR1-KIT1 BLDC motor driver kit

License - MIT/X Consortium

Cross-platform GUI for controlling the Nexperia NEVC-MTR1 motor driver board via SCPI over USB-serial.

The GUI connects to an Arduino Leonardo running the NEVC-MTR1-t01 firmware and provides:

  • Live motor control (enable/disable, frequency, direction)
  • Real-time measurement graphs (speed, currents, duty cycle, voltage)
  • Firmware configuration editor - all 26 parameters in config.h
  • One-click compile and upload (arduino-cli and the Arduino AVR core are downloaded automatically on first use)

The kit hardware is documented on the Nexperia NEVB-MTR1-KIT1 product page.

Screenshots

Graphs Firmware & Config
Graphs tab Firmware & Config tab

Using a pre-built release

Tested platform: Windows 10/11 x64. Windows ARM64, Linux, and macOS builds are provided but untested - use at your own risk and report any issues.

  1. Download the archive for your platform from the Releases page and extract it.
  2. Connect the Arduino Leonardo USB cable to your PC.
  3. Run NEVC-MTR1-GUI.exe (Windows) or NEVC-MTR1-GUI (Linux/macOS) - no installation required.
  4. Select the COM port in the Connection tab and click Connect.

On first launch the app downloads arduino-cli.exe and the Arduino AVR core (~130 MB, one time only). These are stored in %APPDATA%\nevc_mtr1_gui\tools\ and reused on subsequent runs.

macOS: The binary is unsigned. On first launch, right-click it and choose Open to bypass Gatekeeper.

Linux / macOS: The firmware compile/upload tab requires arduino-cli to be installed manually - automatic download is Windows-only.


Building from source

Prerequisites

Tool Version
Rust (stable toolchain) 1.77 or newer
Windows 10 / 11 (64-bit)

Install Rust via rustup.rs.

Build

# Development build (faster compilation)
cargo run

# Optimised release build
cargo build --release
# Output: target\release\NEVC-MTR1-GUI.exe

Project layout

src/
  main.rs          - entry point
  app.rs           - top-level iced application state and message routing
  serial/          - serial port detection and async I/O
  scpi/            - SCPI command builder and response parser
  firmware/        - FirmwareConfig model, arduino-cli bootstrap, compile/upload
  ui/              - per-tab panel widgets (connection, motor, graphs, firmware, config, log)
assets/
  fonts/           - embedded fonts
  icon/            - application icon (.ico, .png)

Firmware

The GUI targets the main branch of github.com/Nexperia/NEVC-MTR1-t01.

The firmware implements trapezoidal (six-step) commutation of a BLDC motor using Hall-effect sensors on the Arduino Leonardo / ATmega32U4 platform. All motor parameters are user-configurable via main/config.h; the GUI exposes every parameter and can compile and flash a custom build without leaving the application.

Pre-built firmware can also be uploaded manually using the Arduino IDE or arduino-cli. Refer to the firmware repository README and the NEVB-MTR1-KIT1 user manual (UM90029) for hardware setup and pin-out details.


License

MIT/X Consortium License — see LICENSE.

About

GUI for the NEVB-MTR1-KIT1 BLDC motor driver kit

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Contributors

Languages