Getting Started with cube:evk
The cube:evk is a complete V2X Evaluation Kit designed to accelerate development, testing, and prototyping of connected mobility applications.
It combines hardware and software into a ready-to-use platform for both On-Board Unit (OBU) and Roadside Unit (RSU) scenarios, enabling fast experimentation with DSRC (ITS-G5) and C-V2X (LTE-V2X) communication.
1. Overview
The cube:evk is powered by an NXP i.MX 8M Plus processor and preloaded with cube:os, a Linux-based operating system optimized for V2X development.
Key Components
Dual-mode V2X Module:
Autotalks SECTON/PLUTON2 chipset supporting both DSRC/ITS-G5 and C-V2X/LTE-V2X. Equipped with a robust dual-channel RF frontend for diversity reception.Interfaces:
- GNSS (u-blox M8U or M8L) with integrated IMU
- CAN interface (SocketCAN compatible)
- Ethernet and USB ports
- HDMI display output
- LTE module (Quectel EC21-EU)
- Wi-Fi and Bluetooth connectivity
Operating System:
cube:os, based on Variscite’s DART-MX8M-PLUS BSP, comes preconfigured with all V2X software components.
cube:evk
The cube:evk combines powerful hardware and a preconfigured Linux-based software stack to provide a fast path from prototype to production.
2. First Power-On and Login
When powered, the cube:evk boots automatically into cube:os. Two users are available by default:
| Username | Password | Permissions |
|---|---|---|
| cube | cube | Standard development user |
| root | root | Administrative user |
You can log in via the debug USB port, which provides a serial console connection. Use a terminal tool such as picocom (or minicom, screen, or putty) on your host computer.
Example (on Linux host)
host:~$ picocom -b 115200 -p n -d 8 /dev/ttyUSBXReplace /dev/ttyUSBX with the correct device path on your system (e.g., /dev/ttyUSB0). After logging in as cube, you’ll see the command prompt (cube:~$). You can now configure networking and access the device remotely.
Initial Access
The cube:evk provides serial console access through the debug USB port for initial setup. Use cube/cube or root/root credentials, and change them after first login for security.
3. Network Configuration
You can connect the cube:evk to your local network via Ethernet or Wi-Fi.
Ethernet
Simply connect a standard Ethernet cable.
If a DHCP server is available, an IP address will be assigned automatically.
To display the assigned IP address:
cube:~$ ip aWi-Fi
To connect to a wireless network, use the nmcli tool:
cube:~$ nmcli dev wifi connect '<ssid>' password '<password>'If your network is not listed:
cube:~$ nmcli device wifi rescanYou can then verify the connection:
cube:~$ ip aRemote Access via SSH
Once the cube:evk has network access, you can connect remotely from your development PC using SSH (Secure Shell):
host:~$ ssh cube@<ip-address>SSH provides a secure, encrypted terminal connection over the network — much faster and more convenient than the serial console.
To simplify file transfer and local editing, you can mount the EVK’s filesystem using SSHFS:
host:~$ sshfs cube@<ip-address>:/home/cube/ /mnt/evkThis lets you work on files directly from your PC as if they were local.
SSH is your Friend
Use Ethernet or Wi-Fi to connect the EVK to your network. Once connected, SSH provides secure remote access, and SSHFS allows seamless file sharing and development.
4. LED Indicators
The cube:evk is equipped with four status LEDs that provide quick visual feedback on system power, GNSS synchronization, and user-defined states.
| LED | Function | Description |
|---|---|---|
| 1 (Top) | System status | Turns solid green once the EVK is powered and has successfully completed the boot process. This indicates that the system is ready for operation. |
| 2 | GNSS PPS signal | Blinks in sync with the Pulse-Per-Second (PPS) output of the GNSS receiver, confirming that a valid GNSS fix and timing synchronization are active. |
| 3–4 | User configurable | Reserved for custom user applications or debugging purposes. These LEDs can be controlled manually or programmatically via GPIO. |
Controlling User LEDs
LEDs 3 and 4 are connected to GPIO pins 14 and 15 of gpiochip1.
You can toggle them manually using the gpioset command from the gpiod utilities.
Example: Control LED 3
Turn on LED 3:
cube:~$ sudo gpioset gpiochip1 14=1Turn off LED 3:
cube:~$ sudo gpioset gpiochip1 14=0Example: Control LED 4
Turn on LED 4:
cube:~$ sudo gpioset gpiochip1 15=1Turn off LED 4:
cube:~$ sudo gpioset gpiochip1 15=0These LEDs can be integrated into scripts or applications for visual feedback — for example, to signal software status, test results, or V2X message activity.
LEDs
- LED 1 confirms system power and boot completion.
- LED 2 blinks with the GNSS PPS signal to indicate valid satellite synchronization.
- LEDs 3 and 4 are user-controllable via GPIO commands — ideal for custom indicators or development feedback.
5. LTE Connectivity (Quectel EC21-EU)
The cube:evk includes an LTE modem for remote connectivity and data transfer. By default, the EC21 module is disabled and must be activated manually.
- Insert a suitable microSIM card into the slot.
- Connect to the LTE module’s serial interface:
cube:~$ picocom -b 115200 -p n -d 8 /dev/ttyUSB3- Configure the APN (example for Telekom):
ec21:~$ at+cgdcont=1,"IP","internet.telekom"- Enable Ethernet-over-USB mode and restart:
ec21:~$ at+qcfg="usbnet",1ec21:~$ at+cfun=1,1After a few seconds, a new network interface will appear. You can verify it using:
cube:~$ ip aIt can now be used for internet access. To deactivate the EC21 adapter again:
ec21:~$ at+qcfg="usbnet",0Remote Access over LTE
The LTE module can be activated via AT commands and provides mobile internet access through a virtual network interface. This allows remote connectivity when Wi-Fi or Ethernet are unavailable.
6. CAN Interface
The cube:evk includes a CAN interface based on Linux’s SocketCAN framework. It is available as can0 and configured automatically during boot.
To manually set the bitrate:
cube:~$ sudo ip link set can0 type can bitrate 500000You can send and receive CAN frames using the can-utils package:
cube:~$ cansend can0 123#DEADBEEFcube:~$ candump can0Developers can also use the SocketCAN API directly to build custom CAN-enabled applications.
SocketCAN
SocketCAN provides a native Linux interface for CAN communication. Use candump and cansend for testing, or integrate CAN access directly into your applications.
7. Next Steps
Now that your cube:evk is online and accessible, you can:
- Explore Radio Settings
- Use our tools for V2X message transmission and reception
- Write your own tools with the Radio and GNSS API

