Omni protocol

Integration level: params + settings
Protocol used by IoT scooters manufactured by Omni headquartered in China.
flespi parses the Omni protocol messages into a JSON object with the fields listed below in the Parameters tab.
battery.charging.status
boolean
Battery charging status
battery.level
number
percentage
Internal battery level
battery.voltage
number
volts
Internal battery voltage
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
error.type
number
Error type identification number
event.code
string
Unique event identifier string
event.enum
number
Event code, full list of codes available at separate table
gsm.signal.level
number
percentage
GSM signal strength level
ident
string
Device unique identificator and optional password
lock.status
boolean
Lock status
message.type
string
Message type
payload.text
string
Text Payload received from device
peer
string
IP:port from which device connecting to the channel
position.altitude
number
meters
Altitude value for position
position.hdop
number
Horizontal dilution of precision
position.latitude
number
degrees
Latitude coordinate value
position.longitude
number
degrees
Longitude coordinate value
position.satellites
number
Quantity of satellites used to calculate coordinates for given position information
position.speed
number
km/h
Instant speed at position detection moment
position.valid
boolean
Is position information accurate and valid for given timestamp
protocol.id
number
ID of protocol
server.timestamp
number
seconds
Timestamp when server received a message
timestamp
number
seconds
Message timestamp
trip.duration
number
seconds
Trip duration
vehicle.state
string
Vehicle state, such as moving, idling, parked etc
vendor.code
string
Vendor identification string code
Properties
Custom command
custom
Send custom command to device. Format: 0xFFFF*SCOS,OM,{ident},{instruction_type},{payload},#
payload: Comma separated list of parameters to send as payload
instruction_type: 2 letter instruction type
R0 Unlocking/Lock operation request command
{"payload":"0,20,1234","instruction_type":"R0"}
L0 Unlocking command, e.g. 255 value received as key in R0 command
{"payload":"255,1234","instruction_type":"L0"}
Send command with no parameters. Specify just instruction type
custom_no_payload
command '0xFFFF*SCOS,OM,{ident},{instruction_type}#
' will be sent. Scooter response will be registered as message
instruction_type: 2 letter instruction type
D0 - Get position instruction
{"instruction_type":"D0"}
S6 - Obtain scooter information command
{"instruction_type":"S6"}

It's possible to get the position data and other parameters from Omni e-scooters as well as manage them remotely via the API.

To connect your scooter using the Omni protocol, you need to have an omni channel created first.

Point your scooter to the channel's domain name:port via SMS or configuration tool provided by the vendor.

Then create a device instance for your tracker and use a 15-character IMEI (usually specified on the tracker casing) in the ident field.

Use the Toolbox tab on the device screen to check if the messages are coming.

It is possible to configure Omni devices OTA using the flespi web-based configurator tool. To connect Omni to Wialon or another platform via flespi please read this article.