HAL (C++, Java, C# and Python)

The Raspberry Pi HALĀ  examples demonstrate how applications running directly on the VMX-pi host Raspberry Pi – written in a variety of programming languages – can access all VMX-pi functionality for use in Robotics Controller and Robotics Co-processor applications.

ExampleDescription
Analog InputsRetrieves analog voltage values from 4 Analog Input Channels
CAN Bus MonitorRetrieves and displays received CAN messages
CAN TX LoopbackTransmits CAN messages and receives those same messages
Digital InputsRetrieves High/Low state from all possible Digital Input Channels
Digital OutputsToggles the High/Low state of all possible Digital Output Channels
EncodersRetrieves latest encoder count/direction from all possible Quadrature Encoder Input Channels
I2CTransmits/Receives data over the VMX-pi I2C interface
IMUDisplays real-time orientation data (Pitch/Yaw/Roll) from the VMX-pi IMU
InterruptsHandles interrupts on High/Low signal state transitions on all possible Interrupt-source Channels
PWM GenerationGenerates PWM signals on all possible PWM Generator Channels
Real-time Clock (RTC)Retrieves/Updates the VMX-pi Real-time Clock, synhronizes with Raspberry Pi system time/date
SPITransmits/Receives data over the VMX-pi SPI Interface
UARTTransmits/Receives data over the VMX-pi UART interface
VMX-pi ConfigurationRetrieves/displays the current VMX-pi configuration data
LED ArrayControls a "PWM" (NeoPixel) LED Array with a soothing, pulsing purple color.