Retour

Décodez n’importe quelles données de capteurs télématiques avec IoT Logic

Benjamin Hayes
Auteur

Benjamin Hayes

12 septembre 2025
Décodez n’importe quelles données de capteurs télématiques avec IoT Logic

Résumé

  • La plupart des traceurs font déjà transiter des octets RS-232/485 vers le cloud, vous recevez donc de l’ASCII ou de l’HEX brut, pas des valeurs déjà interprétées.
  • IoT Logic transforme ce flux brut en métriques exploitables avec un flux visuel, vous décodez dans Initiate Attribute (JEXL et opérations sur bits), conservez un historique de 12 lectures, bifurquez avec IF/THEN et diffusez les résultats en parallèle, sans backend sur mesure.
  • Le Data Stream Analyzer simplifie le dépannage, vous observez les charges brutes et les champs calculés en temps réel, et vous voyez toujours les 12 dernières valeurs valides comme une radiographie.
  • En pratique c’est du plug and play, vous parsez des paires clé-valeur Technoton via Teltonika, récupérez des IDs conducteur des tunnels Queclink, décodez les trames 0x9B Concox, remontez des RPM et des comptages de passagers depuis Digital Matter ou Streamax, puis vous déclenchez des alertes, immobilisez ou actionnez des relais.
  • Réutilisez des expressions simples, des masques de bits, des deltas entre valeur actuelle et précédente, et des contrôles sensibles au temps avec srvTime ou genTime, afin d’amortir le bruit, détecter les tendances, rester agnostique au fournisseur et livrer des tableaux de bord sans nouveaux projets backend.

Imaginez. Votre traceur est en ligne et remonte correctement, mais le capteur atypique branché sur son port RS-232 — une sonde de carburant, un lecteur RFID, peut-être même un compteur de passagers — ne parle pas la même langue que votre application cloud. À la place, il recrache des trames brutes : 79 79 … 9B … 0D 0A ou une ligne cryptique comme can_tot_fuel_used=2076.4139.

IoT Logic Support Sensor Readings

Le dispositif GPS, la dashcam ou le MDVR n’essaient pas de comprendre. Ils agissent simplement comme une passerelle, en enveloppant ces octets bruts et en les envoyant au cloud sans y toucher. Cette flexibilité est excellente pour connecter des capteurs rares ou de niche, mais elle peut dérouter quand un client attend des tableaux de bord et des alertes le jour même.

C’est précisément pour ce monde que l’IoT Logic de Navixy a été conçu. Il vous permet de récupérer ces octets, d’extraire bits et champs avec un flux visuel simple, de réutiliser des expressions basées sur JEXL (oui, y compris bitwise), de raisonner sur les 12 dernières lectures, de bifurquer avec IF/THEN et soit d’afficher, soit de relayer, soit même d’envoyer des commandes aux appareils, sans avoir besoin d’un backend personnalisé.

D’abord, un rapide rappel de réalité : la plupart des traceurs transmettent déjà des données capteur brutes

Dans tout le secteur, les modes « transparents » ou « pass-through » sont omniprésents :

  • Teltonika (FMB/FMC) : réglez RS-232/485 sur TCP ASCII/Binaire et tout ce que le périphérique envoie va directement sur votre serveur, encapsulé en Codec 12 ; les envois tamponnés — et lorsque l’option d’horodatage est activée — utilisent le Codec 13. ASCII attend <CR><LF> ; le Binaire part après ~30 ms de silence. Aucun parsing sur l’appareil.

  • Queclink (GV/GL) : le protocole @Track inclut +RESP:GTDAT pour le tunnel série ASCII ; vous pouvez aussi descendre des commandes via AT+GTDAT. Pour les charges série binaires/hex, les fournisseurs utilisent souvent le rapport GTDTT.

  • Jimi/Concox : le paquet 0x9B « Transmission Transparente » encapsule des données RS-232 (ASCII/HEX) avec un petit en-tête/CRC afin que le serveur puisse décoder.

  • Ruptela : le Canal Transparent utilise la Commande 14/114 pour remonter/descendre des octets série bruts. Il horodate même l’arrivée des données côté RS-232.

  • Suntech/STLab : les rapports de la famille ST300 incluent des champs de données RS-232 utilisateur (des centaines d’octets par message) — transmis à la plateforme.

  • Digital Matter (G120/G150) : mode Pass-through RS-232 explicite ; les passerelles BLE relaient les données de balises/capteurs.

  • Streamax (MDVR/dashcams) : les MDVR exposent RS-232/RS-485 pour des périphériques (compteurs de passagers, panneaux LED, etc.), relayant événements/valeurs avec la télémétrie vidéo.

Comment IoT Logic rend « l’espaghetti série » digeste

IoT Logic vous offre un pipeline glisser-déposer :

GPS Gateway Transparent Mode

Vous décodez, enrichissez et routez — le tout au même endroit.

Initiate Attribute est votre bloc de décodage. Vous créez des attributs nommés et transformez les charges brutes avec le langage d’expressions Navixy (basé sur JEXL), des découpes de chaînes aux maths en passant par les masques de bits.

Autre atout : IoT Logic stocke la valeur courante et jusqu’à 12 valeurs précédentes par paramètre. Dans une expression, value('sensor', N, 'valid') vous permet de récupérer « maintenant » (index 0) ou de remonter 12 crans d’historique propre et valide. Vous pouvez aussi demander l’heure de l’appareil (gen) ou du serveur pour chaque valeur avec genTime() / srvTime(). Cela rend triviales l’antirebond, les vérifications de delta et la logique de tendance — sans base de données.

Quand il faut décider, le nœud Logic évalue une expression booléenne et scinde le flux (IF/THEN). Et quand vient l’action, le nœud Action peut envoyer des commandes aux appareils ou notifier des systèmes externes. Pour diffuser les résultats, le nœud Output Endpoint les achemine en parallèle vers l’UI Navixy et/ou vos propres applications/services.

Pour le dépannage en direct, Data Stream Analyzer affiche l’entrée brute du dispositif et vos attributs calculés au fil de l’eau, avec ces 12 dernières valeurs visibles d’un coup d’œil. C’est une radio de votre pipeline.

À quoi ça ressemble en pratique (quatre mini-récits)

1) Teltonika + adaptateur CAN Technoton : du texte en entrée, des métriques en sortie

Un adaptateur Technoton sur RS-232 diffuse des données ASCII sous forme de paires clé-valeur :

can_ign=1;can_speed=54;can_tot_fuel_used=2076.4139

En mode TCP ASCII de Teltonika, le traceur transmet chaque ligne après <CR><LF> directement au serveur en Codec 12/13. Initiate Attribute d’IoT Logic analyse les paires, enregistre can_speed comme nombre et journalise un taux de variation pour fuel_used en utilisant la valeur valide précédente à l’index 1. Si speed > 0 alors qu’un bit « porte ouverte » est actif, le nœud Logic déclenche une alerte ; si une chute rapide de carburant est détectée contact coupé, Action peut activer un relais ou envoyer une commande.

2) Queclink GTDAT (ASCII) et GTDTT (HEX) : IDs conducteur et plus

Le rapport +RESP:GTDAT de Queclink est littéralement un tunnel texte série ; le serveur peut envoyer AT+GTDAT en sens descendant pour dialoguer avec le périphérique. Pour des charges binaires, GTDTT transporte l’hex. Dans IoT Logic vous découpez ou décoder l’hex une fois, puis vous conservez des champs comme driver_id comme attributs de première classe. Ensuite, c’est simple : si l’ID de carte n’est pas dans votre liste blanche, branchez sur « non autorisé » et Action envoie une commande d’immobilisation.

3) Concox 0x9B : trames hex qui « fonctionnent tout de suite »

Les traceurs Concox encapsulent des octets périphériques dans des paquets 0x9B. Exemple de structure :

79 79 … 9B 03 … 02 31 42 30 30 31 33 46 37 37 37 38 38 03 … 0D 0A

Ces octets internes se décodent en une chaîne RFID ; IoT Logic la stocke, la compare à la valeur précédente (index 1) pour filtrer les doublons et n’émet que les changements. S’il s’agit plutôt d’une sonde de carburant, nous faisons la correspondance octets->litres, lissons avec la fenêtre de 12 valeurs et publions.

La définition officielle de la « transmission transparente » pour 0x9B est publique également, si vous voulez les détails sur le fil.

4) Digital Matter et Streamax : RPM et comptages sans code supplémentaire

Les G120/G150 de Digital Matter prennent en charge le Pass-through RS-232 ; le capteur de tambour Dingtek DZ300, par exemple, remonte les RPM du baril (+/– indique la direction). Vous le hissez en attribut, puis bifurquez selon l’état du PTO pour détecter du ciment laissé au ralenti.

Pour le transport de personnes, les MDVR Streamax véhiculent des compteurs via RS-232/RS-485 ; IoT Logic fusionne « IN/OUT » avec une balise BLE de température et active un ventilateur auxiliaire si l’habitacle est surchargé et chaud.

Quelques astuces d’expressions à réutiliser souvent

Bits indicateurs dans des masques

Un paquet de bits d’état OBD/CAN ou de drapeaux de portes ? Extrayez juste celui qui vous intéresse :

(value('status_flags', 0, 'valid') & 0x10) != 0

Cela vérifie si le bit 4 est positionné et ne route que si c’est vrai.

Valeur actuelle vs. précédente

Besoin de détecter des pics ou chutes soudains ? Comparez la dernière lecture à la précédente :

value('fuel_l', 0, 'valid') - value('fuel_l', 1, 'valid')

Ajoutez un seuil et vous obtenez un anti-rebond instantané ou un filtrage des oscillations de carburant — sans acrobaties SQL.

Règles sensibles au temps

Parfois ce n’est pas seulement la valeur, mais la durée. Exemple : déclencher une alerte si la température reste au-dessus de 26 °C pendant trois minutes :

srvTime('temp', 0, 'valid') - srvTime('temp', 1, 'valid') > 180000
&& value('temp', 0, 'valid') > 26

Vos flux restent propres et lisibles parce que le nœud Logic n’a besoin que d’un oui/non. Le nœud Initiate Attribute fait le gros du travail (renommage, échelle, masquage) et le nœud Action décide de la suite : activer un relais, mettre à jour l’UI ou pousser l’événement vers MQTT ou votre app.

Pourquoi les équipes livrent plus vite (et se disputent moins avec la finance)

Avec IoT Logic, pas besoin de lancer un nouveau service backend à chaque nouveau capteur déployé. Vous décodez une fois dans Initiate Attribute, réutilisez sur les appareils et restez agnostique du fournisseur — que les données viennent de Teltonika, Ruptela, Concox, d’une dashcam ou d’une balise BLE.

En parallèle, Data Stream Analyzer vous offre une visibilité instantanée sur les valeurs brutes et traitées, tandis que les sorties vont en parallèle vers les tableaux de bord Navixy et vos propres systèmes. Moins de code spécifique, moins de tickets de support, et pas de batailles budgétaires pour « juste un capteur de plus ».

Pret à transformer des octets bruts en métriques claires et actionnables ? Laissez-nous cartographier votre flux vers des résultats, puis contactez notre équipe Commerciale pour planifier le déploiement.