Device — a virtual instance of a real tracker

Core element in flespi - dedicated storage, telemetry, remote configuration, data transformation, analytics, etc.

Essentials

  • A device is a virtual instance representing your physical tracker in the flespi platform.
  • Devices in flespi are distinguished by a unique ident which most of the time corresponds to the tracker’s IMEI.
  • You can configure different models of trackers from a single friendly interface (or via the API). Bulk updates are also supported.
  • Devices can store messages in flespi for up to 10 years.
  • Any device can be disabled. This feature can help mitigate channel loading bursts caused by channel inaccessibility or connectivity issues. Once a device is disabled, existing connections will be closed and new connections will be rejected. Only disabled devices can be moved between subaccounts.
  • There is no specific hard link between devices and channels. To start receiving data from the device it is enough to create in your account channel working on the device type's protocol and configure tracker to channel's URI. Channel determines which device to use based on the combination of ident and protocol_id properties configured in device. If you occasionally created 2 devices with the same ident that use the same protocol (even if different device types, but within the same protocol) - one of them will be automatically blocked by the platform.
  • flespi currently supports 1000+ device types.
  • AI assistance based on official device manuals is provided for range of manufacturers and their most popular device types.

Important: You must have at least one channel to make your flespi devices work.

How devices work

Devices extend the functionality of channels in the following ways:

  • Each registered device has its own message buffer (100 MB for the free account, 10 GB for the commercial account) with up to 10 years of storage period.

  • You can perform calculations on device messages — extract trips/stops, detect geofence ins/outs, and a lot more.

  • You can apply plugins to device messages to modify their content.

  • You can configure your telematics devices remotely via API or a Setbox tool.

  • Devices feature telemetry that contains the latest values of all parameters received from the device and the time they were updated.

  • You can integrate video telematics features into your application.

  • Device location can be visualized in TrackIt! — open-source web application for basic GPS tracking.

  • Charts with values from historical device message parameters can be visualized in grafana.

  • You can also export trips for your device in KML, GPX, or GeoJSON format.

In terms of IoT, a registered device is a kind of thing twin in AWS IoT hub or device shadow in MS Azure IoT. Even if your physical device is offline, you can get its last telemetry and plan to send a command as soon as the device connects to flespi. Moreover, the device can be configured via SMS which allows you to force the device to do something.

How to create a device?

  1. Log in to the flespi panel
  2. Navigate to Telematics hub -> Devices and click the "+" button in the bottom right corner to add a new device:
    create flespi deviceNote: you should have a channel of the proper protocol created; however, if you don't, you will be reminded to create a channel upon device creation.
  3. Give the new device a meaningful name and pick the device type from the drop-down and enter the device identifier (usually an IMEI):
    flespi device configuration
  4. If you've already pointed your GPS tracker to the proper channel, you should soon start getting messages inside your flespi device. Open the Logs & Messages tab for your device to check:
    flespi device logs messages

If you want to automatically create devices when they connect to the channel you can use webhooks. You can also create devices in bulk from channel's Connections tab, import them from CSV file or just use REST API directly.

Devices API

To perform any operations with the devices, use the devices API.

To store in devices any custom user data you may use metadata. JSON object fields inside metadata can also be used to select device for any REST API operation.

To simulate device behavior you post messages via REST API directly into the device. This will trigger full processing cycle for the message including its processing by plugins, telemetry update and publication of various events into device MQTT topics.

Troubleshooting

In case of any issues, check the Logs & Messages tab on the device screen:

device logs and messages

If you do not see expected messages in Messages pane but you see that device communicated with flespi channel according to Logs it can be due to a few reasons:

  • Check if device is configured to store messages at all with non-zero messages_ttl.
  • Ensure that channel received any message from this device at that time. To check this, open Logs & Messages pane of corresponding channel, enter filter by device's ident: ident="<device's ident>" and press Enter. In channel, messages are sorted by server.timestamp (reception time) and not processed by plugins so you should see there original telemetry reported by the device.
  • If you do not see any messages in the channel from this device, right click on the log line and check raw traffic. It may be so that device just connects and authorizes but do not send any meaningful data.
  • If you see messages in the channel take attention to the timestamp parameter (telemetry gathering time reported by the device) - it may be far in the future or in the past.
  • Check plugins logs for any plugin to which device is assigned to. Plugins may discard message or modify any of its parameter, including timestamp.

Use raw traffic viewer to investigate parsing issues. By mouse right-click on the error log you may select "View error traffic" to see exact byte that caused parsing issue. access device traffic

For searching information in official device manuals provided by the manufacturer you can use our integrated AI assistant. It is available for almost all leading device manufacturers and their most popular device models. It is capable of:

  • Providing detailed information on how to configure the device based on the device manual.
  • Answering user questions related to the setup, configuration, and usage of the device.
  • Sharing relevant links and resources from the device manual to help you troubleshoot issues or optimize your device configuration.

To access AI assistant open device properties, click on AI tab and start chatting:

device ai assistant

If you want to analyze your device data and state with AI you should use another AI assistant - codi. It operates with theoretical knowledge from device manuals and has access to real device data - properties, settings, telemetry and logs. It is able to combine together all these informational sources and provide deep analysis of your device.

Finally if you accidentally removed device messages and need to restore the data from it, you may download the snapshots using this API call. There are 2 snapshots for each device for 2 last days. Snapshot is archived text file of JSON messages array taken once per 24 hours. There is no native UI tool to restore device messages from snapshot to device storage.

If you accidentally deleted device you may restore the device with all its messages from recycle bin.

What's next?

  • To forward the parsed data from your devices, explore our streaming options.
  • To transform device messages, use plugins.
  • To apply real-time analytics to device messages, use calculators.
  • Connect grafana to your flespi device to visualize message parameter values.

Before you will start using flespi on a full scale we suggest to watch detailed videos from our conference. Invest your time into watching them now to save much more time and money later, when you will implement your project:


See also
Restore your accidentally deleted items within a 30-day period.
UI options to control the order of items received via REST API