High-mobility protocol

Get OEM data through High Mobility platform to flespi.
flespi parses the High-mobility protocol messages into a JSON object with the fields listed below in the Parameters tab.

High Mobility is a platform designed to normalize and centralize vehicle telemetry and status data from various OEM sources into a single, consistent API. It abstracts away the complexities of disparate OEM data formats and communication protocols, providing developers with a unified interface to access vehicle information like CAN bus data, sensor readings, and vehicle state.

This guide walks you through the process of connecting TEST data streams to flespi to the data from High Mobility. If you struggle with connecting LIVE API data from real vehicles, please contact the flespi team for support.

Step 1. Create an account on the High Mobility platform.

Step 2. Create a new data project.

Step 3. Add the desired data packages for the vehicle manufacturers that you want to test.

Step 4. Create MQTT Streaming. Note: use MQTT V2(Enterprise) option.

Step 5. Create an MQTT Client certificate chain and download it by clicking on a "+"  button under Add MQTT V2 Client Certificate section.

Step 6. Now we have all the data to create a high-mobility channel at flespi: go to the flespi dashboard, Channels -> Create new channel -> Select protocol “high-mobility”.

  • From the OAuth Client, copy Client ID, Client Secret, and get the API base URL in the format https://sandbox.api.high-mobility.com/ (without v1/access_tokens).
  • Open the snippet.txt file from the certificate chain archive and copy the MQTT Broker URI, Client ID, and topic to subscribe. Open the certificate files in the downloaded archive and insert certificates values and key values into the appropriate configuration fields.

Step 7. Create a new simulator and open it.

Step 8. Create a new device at flespi with type “High Mobility”, use VIN from the simulator as the device identifier.

Step 9. In the created flespi device, go to Commands and Settings -> New command and select the “Provision device” command, and execute it by adding it to the queue.

Step 10. At the High Mobility platform, go to Simulations -> Create new and run it.

Once you do all the steps, you’ll see the data in the flespi Logs & Messages tables.

can.average.speed
number
km/h
Vehicle average speed, read from CAN
average_speed
can.brake.fluid.low.indicator.status
boolean
Brake fuel low indicator status read, from CAN
dashboard_lights.brake_fluid_warning
can.dtc
array
Diagnostic trouble code array read from CAN May content list of OBDII codes or list of objects with codes. Standard object parameter names used: *standard* - Protocol standard (J1939, J1708(J1587), OBDII) *mid* - Message Identifier (J1708) *sid* - Subsystem Identifier (J1708) *fmi* - Failure Mode Identifier (J1939, J1708) *spn* - Suspect Parameter Number (J1939) *sa* - Source Address (J1939, OBDII) *oc* - Occurrence Count (J1939) *cm* - Conversion Method (J1939) *status* - Status of error code (active, pending, historical, permanent)
oem_trouble_code_values
can.engine.coolant.temperature
number
celsius
Engine coolant temperature read from CAN
engine_coolant_temperature
can.engine.oil.life
number
percentage
Remaining useful life of the engine oil
engine_oil_life_remaining
can.fuel.level
number
percentage
Fuel level in tank read from CAN
fuel_level
can.fuel.level.low.indicator.status
boolean
Low fuel level indicator status, read from CAN
dashboard_lights.fuel_level
can.full.charge.time
number
seconds
Time to full charge from CAN bus
time_to_complete_charge
can.left.front.tire.pressure
number
bar
Left front tire pressure, read from CAN
tire_pressures.front_left
can.left.front.tire.pressure.status
boolean
Left front tire pressure is normal
tire_pressure_statuses.front_left
can.left.rear.outer.tire.pressure
number
bar
Left rear outer tire pressure (for dual rear wheels)
tire_pressures.rear_left_outer
can.left.rear.outer.tire.pressure.status
boolean
Left rear outer tire pressure is normal (for dual rear wheels)
tire_pressure_statuses.rear_left_outer
can.left.rear.tire.pressure
number
bar
Left rear tire pressure, read from CAN
tire_pressures.rear_left
can.left.rear.tire.pressure.status
boolean
Left rear tire pressure is normal
tire_pressure_statuses.rear_left
can.maintenance.before.engine.hours
number
hours
Engine hours before the next maintenance, read from CAN
engine_time_to_next_service
can.maintenance.before.mileage
number
km
Mileage before next maintenance read from CAN
distance_to_next_service
can.oil.service.mileage
number
km
Distance to next oil service
distance_to_next_oil_service
can.oil.service.time
number
days
Time to next oil service
time_to_next_oil_service
can.right.front.tire.pressure
number
bar
Right front tire pressure, read from CAN
tire_pressures.front_right
can.right.front.tire.pressure.status
boolean
Right front tire pressure is normal
tire_pressure_statuses.front_right
can.right.rear.outer.tire.pressure
number
bar
Right rear outer tire pressure (for dual rear wheels)
tire_pressures.rear_right_outer
can.right.rear.outer.tire.pressure.status
boolean
Right rear outer tire pressure is normal (for dual rear wheels)
tire_pressure_statuses.rear_right_outer
can.right.rear.tire.pressure
number
bar
Right rear tire pressure, read from CAN
tire_pressures.rear_right
can.right.rear.tire.pressure.status
boolean
Right rear tire pressure is normal
tire_pressure_statuses.rear_right
can.service.time
number
days
Time to next service
time_to_next_service
can.soot.filter.indicator.status
boolean
DPF/FAP soot filter indicator status, read from CAN
dashboard_lights.diesel_particulate_filter
can.tpms.indicator.status
boolean
Tire pressure monitoring system indicator status, read from CAN
dashboard_lights.tire_pressure_low
can.trip.mileage
number
km
Distance driven since engine start from CAN
distance
can.vehicle.battery.charge.current
number
amperes
Vehicle battery charging current read from CAN
charging_current
can.vehicle.battery.charge.rate
number
kW
Vehicle battery charge rate power read from CAN
charging_rate
can.vehicle.battery.charge.state
string
Vehicle battery charge state description, detected from CAN
status
can.vehicle.battery.charging.cable.connected.status
boolean
Vehicle battery charging cable connected/disconnected status, read from CAN
plugged_in
can.vehicle.battery.level
number
percentage
CAN-bus reported vehicle battery level for EV or HEV
battery_level
can.vehicle.battery.remaining.range
number
km
Vehicle battery remaining range, read from CAN
estimated_range
can.vehicle.mileage
number
km
Total vehicle mileage read from CAN
odometer
can.vehicle.mixed.powertrain.range
number
km
Vehicle estimated mixed powertrain range (electric + fuel) read from CAN
estimated_mixed_powertrain_range
can.vehicle.primary.energy.level
number
percentage
Primary energy source level (fuel tank) for hybrid vehicles read from CAN
primary_energy_level
can.vehicle.speed
number
km/h
Vehicle speed read from CAN
speed
can.washer.fluid.level.low.indicator.status
boolean
Low washer fluid level indicator, read from CAN bus
dashboard_lights.windscreen_washer_fluid
channel.id
number
ID of channel that received a message
device.id
number
ID of device that received a message
device.name
string
Name of device that received a message
device.type.id
number
ID of device type of device that received a message
engine.ignition.status
boolean
Engine ignition or ACC status
state
external.powersource.voltage
number
volts
External power voltage
battery_voltage
gps.signal.level
number
GPS signal level
gps_signal_strength
ident
string
Device unique identifier like serial number, IMEI, etc
peer
string
IP:port from which device connecting to the channel
position.altitude
number
meters
Altitude value for position
altitude
position.direction
number
degrees
Heading angle at position detection moment
heading
position.latitude
number
degrees
Latitude coordinate value
coordinates.latitude
position.longitude
number
degrees
Longitude coordinate value
coordinates.longitude
position.source
string
Source of position.latitude and position.longitude parameters if they were received from other systems than GNSS, i.e. lbs, wifi
gps_source
protocol.id
number
ID of protocol
server.timestamp
number
seconds
Timestamp when server received a message
timestamp
number
seconds
Message timestamp
trip.start.latitude
number
degrees
Trip start latitude coordinate value
start_coordinates.latitude
trip.start.longitude
number
degrees
Trip start longitude coordinate value
start_coordinates.longitude
trip.start.timestamp
number
seconds
Timestamp value upon trip start
start_time
trip.stop.latitude
number
degrees
Trip stop latitude coordinate value
end_coordinates.latitude
trip.stop.longitude
number
degrees
Trip stop longitude coordinate value
end_coordinates.longitude
trip.stop.mileage
number
km
Trip end odometer value
end_odometer
trip.stop.timestamp
number
seconds
Timestamp value upon trip end
end_time