Pi Research PDS : on a décodé le format binaire natif
Brake Point supporte désormais l'import direct des fichiers PDS des loggers Pi Research / Cosworth — sans passer par Pi Toolbox Pro.
Quand on développe une plateforme de télémétrie, on se heurte tôt ou tard à un mur : les formats propriétaires. Chaque constructeur de logger utilise son propre format binaire, rarement documenté, souvent verrouillé derrière un logiciel payant.
C’est exactement le cas de Pi Research (aujourd’hui Cosworth). Jusqu’ici, les utilisateurs de loggers Pi devaient exporter leurs données en MAT via Pi Toolbox Pro — un logiciel Windows qui nécessite un abonnement payant. On s’est dit qu’on pouvait faire mieux.
Ce qu’on a fait
On a reverse-engineered le format PDS (Pi Data Series), le format binaire natif des loggers Pi Research. Concrètement, ça veut dire que vous pouvez maintenant importer directement le fichier .pds de votre logger dans Brake Point, sans aucun logiciel intermédiaire.
Plus de Pi Toolbox. Plus d’export manuel canal par canal. Vous branchez le logger, vous copiez le fichier, vous l’importez.
Données extraites
Le support PDS est expérimental — voici ce que Brake Point est capable d’extraire aujourd’hui :
Données fiables
| Donnée | Source | Précision vs MAT |
|---|---|---|
| Position GPS (lat/lon) | Logger | Exacte |
| Vitesse GPS | Logger | Exacte |
| Altitude GPS | Logger | Exacte |
| Vitesse ECU | Logger | ~99% |
| RPM moteur | Logger | ~98% |
| Accélérateur (%) | Dérivé par Brake Point | ~95% |
| Freinage (%) | Dérivé de la décélération | ~98% |
| Nom du véhicule | Métadonnées | Quand disponible |
| Nom du circuit | Métadonnées | Quand disponible |
Données partielles
| Donnée | Statut |
|---|---|
| Accélération latérale | Détectée, mais les axes (latéral/longitudinal) peuvent être inversés selon la session |
| Accélération longitudinale | Détectée, mais peut contenir les données latérales (voir ci-dessus) |
| Découpage des tours | Fonctionne sur environ la moitié des sessions — sinon, le découpage GPS par ligne de S/F prend le relais |
Données non disponibles
- Rapport de boîte : pas de canal identifié. En MAT, cette donnée n’est disponible qu’avec du matériel de télémétrie compatible.
Pourquoi certaines données sont-elles partielles ?
Le format PDS enregistre les données brutes du bus CAN telles qu’elles arrivent du logger. Le problème : la correspondance entre les noms de canaux et les données réelles dépend entièrement de la configuration CAN faite par l’utilisateur (ou l’ingénieur qui a installé le logger). Chaque installation étant différente, les mêmes noms de canaux peuvent transporter des données complètement différentes d’une voiture à l’autre, voire d’une session à l’autre sur le même véhicule si la configuration a été modifiée.
C’est pour cette raison que Brake Point ne se fie pas aux noms de canaux et utilise une détection basée sur le contenu (plages de valeurs, fréquences d’échantillonnage, corrélations entre signaux) pour identifier automatiquement chaque donnée.
C’est ce qui rend l’accélération difficile : les deux axes ont des plages similaires et ne peuvent pas être distingués de manière fiable sans référence externe. Pour les tours, le canal porteur du compteur de tours n’est pas toujours présent dans le fichier brut.
Astuce : si vous travaillez avec un ingénieur ou un préparateur qui configure votre logger Pi Research, demandez-lui de respecter le mapping des canaux listé ci-dessous. Cela garantira une détection optimale de toutes les données par Brake Point.
Mapping des canaux supportés
Pour les curieux, voici les canaux PDS que Brake Point sait actuellement exploiter. Les canaux « stables » portent toujours la même donnée ; les canaux « détectés par contenu » varient d’une session à l’autre et sont identifiés automatiquement par analyse des valeurs.
Canaux stables
| ch_id | Donnée réelle | Notes |
|---|---|---|
| 502 | GPS Latitude | Stocké en radians, converti en degrés. Partagé avec des données CAN (filtrage automatique). |
| 532 | GPS Longitude | Idem — radians → degrés, filtrage CAN. |
| 213 | RPM moteur | Stocké en rad/s — converti via ×9.549. |
Canaux détectés par contenu (varient selon la session)
| Donnée | ch_id observés | Méthode de détection |
|---|---|---|
| Vitesse ECU | 199, 168, 721, 112 | Plage 0-70 m/s, fréquence 50Hz, corrélation RPM |
| Vitesse GPS | 281, 305, 304, 119 | Plage 0-70 m/s, fréquence 10Hz |
| Altitude GPS | 185, 151, 152 | Plage 0-1000 m, fréquence 10Hz |
| Accélération | 718, 712 | Plage ±3 g — axes non distinguables de manière fiable |
| Compteur de tours | 224 | Entier, 5Hz — présent dans ~50% des sessions |
Non mappés (dérivés ou absents)
| Donnée | Méthode |
|---|---|
| Accélérateur (%) | Dérivé de la vitesse + accélération + RPM (~5% d’erreur vs MAT) |
| Freinage (%) | Dérivé de la décélération longitudinale (~98% corrélation vs MAT) |
| Rapport de boîte | Non disponible — aucun canal identifié |
Freinage : dérivé de la décélération
Le fichier PDS ne contient pas de canal de pression de frein exploitable. On a donc pris une autre approche : dériver le freinage à partir de la décélération longitudinale.
Quand la voiture décélère, on normalise l’intensité de cette décélération en pourcentage. Comparé aux données de frein du MAT (capteur direct), le résultat affiche une corrélation de 98% (Pearson r=0.979). Ça ne distingue pas la pression pédale du frein moteur, mais ça capture fidèlement toutes les phases de freinage.
Accélérateur : dérivé par Brake Point
Le fichier PDS ne contient pas de canal accélérateur directement exploitable. C’est une réalité des loggers Pi Research : le matériel ne collecte pas toujours la position accélérateur dans ses emplacements de stockage natifs. Des logiciels comme Pi Toolbox Pro utilisent leurs propres algorithmes de reconstruction pour restituer cette donnée lors de l’export MAT.
On a développé notre propre méthode de dérivation, qui combine plusieurs signaux disponibles dans le fichier pour reconstituer la position de l’accélérateur avec une marge d’erreur d’environ 5% par rapport aux données MAT. Les zones de freinage restent propres à 0%.
Limites actuelles
- Axes d’accélération : l’accélération latérale et longitudinale sont détectées, mais peuvent être inversées selon la session. Impact sur les diagrammes G-G.
- Découpage des tours : fonctionne sur ~50% des sessions. Quand le canal n’est pas détecté, le fichier est importé comme une seule session continue.
- Gaps RPM : l’ICD-Lite répartit les données RPM sur des blocs alternés dans le fichier. Résultat : environ la moitié des tours affichent RPM=0. C’est une contrainte matérielle — Pi Toolbox Pro reconstitue les données lors de l’export MAT, mais le fichier brut est incomplet sur ce canal.
- Rapport de boîte : pas de canal identifié. En MAT, cette donnée n’est disponible qu’avec du matériel de télémétrie compatible.
- Validé sur un seul modèle de logger : ICD-Lite / GT4 RS. D’autres combinaisons logger/véhicule pourraient nécessiter des ajustements.
Comment importer un fichier PDS
- Copiez le fichier
.pdsdepuis la carte mémoire de votre logger - Connectez-vous à app.brakepoint.io
- Importez le fichier — Brake Point fait le reste
Le guide complet est disponible ici.
Et la suite ?
Chaque fichier PDS qu’on reçoit nous aide à affiner la détection. Si vous avez un logger Pi Research (Sigma, Delta, Omega, ICD, Cosworth), envoyez-nous vos fichiers — même si l’import échoue, ça nous aidera à élargir le support.
On s’attaque à d’autres formats binaires non documentés. Chaque format qu’on déverrouille, c’est un logiciel payant en moins entre vos données et votre analyse.
Analysez vos propres sessions
Rejoignez la beta et recevez 5 analyses BudAI par semaine, gratuitement.
Rejoindre la beta