﻿<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://bacasable.arpitania.eu//index.php?action=history&amp;feed=atom&amp;title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD</id>
	<title>Architecture et rétro-ingénierie LBD - Historique des versions</title>
	<link rel="self" type="application/atom+xml" href="https://bacasable.arpitania.eu//index.php?action=history&amp;feed=atom&amp;title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD"/>
	<link rel="alternate" type="text/html" href="https://bacasable.arpitania.eu//index.php?title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD&amp;action=history"/>
	<updated>2026-11-14T11:53:50Z</updated>
	<subtitle>Historique des versions pour cette page sur le wiki</subtitle>
	<generator>MediaWiki 1.32.0</generator>
	<entry>
		<id>https://bacasable.arpitania.eu//index.php?title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD&amp;diff=13671&amp;oldid=prev</id>
		<title>Seraf1 le 23 octobre 2026 à 09:51</title>
		<link rel="alternate" type="text/html" href="https://bacasable.arpitania.eu//index.php?title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD&amp;diff=13671&amp;oldid=prev"/>
		<updated>2026-10-23T09:51:12Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;fr&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;← Version précédente&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #222; text-align: center;&quot;&gt;Version du 23 octobre 2026 à 09:51&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Ligne 1 :&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Ligne 1 :&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;← Retour à la page principale : [[&lt;del class=&quot;diffchange diffchange-inline&quot;&gt;Laboratory Better Driver&lt;/del&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;← Retour à la page principale : [[&lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;FISA NR 2026 Groupe 3&lt;/ins&gt;]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;L''''architecture de LBD''' repose sur une approche non intrusive : le micrologiciel interne (''firmware'') de l'instrument scientifique n'est jamais modifié. LBD agit exclusivement sur l'interface de communication entre l'instrument et le système d'exploitation moderne.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #222; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;L''''architecture de LBD''' repose sur une approche non intrusive : le micrologiciel interne (''firmware'') de l'instrument scientifique n'est jamais modifié. LBD agit exclusivement sur l'interface de communication entre l'instrument et le système d'exploitation moderne.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Seraf1</name></author>
		
	</entry>
	<entry>
		<id>https://bacasable.arpitania.eu//index.php?title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD&amp;diff=13668&amp;oldid=prev</id>
		<title>Seraf1 : ⧼wikieditor-publish-dialog-summary⧽</title>
		<link rel="alternate" type="text/html" href="https://bacasable.arpitania.eu//index.php?title=Architecture_et_r%C3%A9tro-ing%C3%A9nierie_LBD&amp;diff=13668&amp;oldid=prev"/>
		<updated>2026-10-23T09:47:17Z</updated>

		<summary type="html">&lt;p&gt;⧼wikieditor-publish-dialog-summary⧽&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Nouvelle page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;← Retour à la page principale : [[Laboratory Better Driver]]&lt;br /&gt;
&lt;br /&gt;
L''''architecture de LBD''' repose sur une approche non intrusive : le micrologiciel interne (''firmware'') de l'instrument scientifique n'est jamais modifié. LBD agit exclusivement sur l'interface de communication entre l'instrument et le système d'exploitation moderne.&lt;br /&gt;
&lt;br /&gt;
== Découpage en couches (Stack LBD) ==&lt;br /&gt;
Le logiciel LBD s'organise en trois couches distinctes pour garantir la portabilité des pilotes sur Linux et Windows (10/11) :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! Couche !! Rôle technique !! Technologies utilisées&lt;br /&gt;
|-&lt;br /&gt;
| '''1. Acquisition physique (Bus)''' || Gestion bas niveau des ports de communication et capture des trames brutes. || `libusb`, `libserialport`, Linux-GPIB, sockets TCP/UDP&lt;br /&gt;
|-&lt;br /&gt;
| '''2. Abstraction matérielle (HAL)''' || Traduction des commandes propriétaires de l'instrument en commandes standardisées LBD. || C / Rust (modules compilés par famille d'équipements)&lt;br /&gt;
|-&lt;br /&gt;
| '''3. Exposition et API''' || Exportation des données et contrôle de l'instrument par des logiciels tiers modernes. || API REST, gRPC, standard SiLA 2, export JSON / CSV&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Méthodologie de rétro-ingénierie des pilotes ==&lt;br /&gt;
La majorité des équipements de laboratoire obsolètes reposent sur des bus de communication standards dont seul le dialecte applicatif est propriétaire. La création d'un nouveau pilote LBD suit quatre étapes :&lt;br /&gt;
&lt;br /&gt;
=== 1. Interception du trafic (Sniffing) ===&lt;br /&gt;
L'équipement est connecté à son poste de contrôle d'origine (ex. Windows XP). Un analyseur de protocole matériel ou logiciel (`usbmon` / Wireshark pour l'USB, intercepteur série RS-232 en Y, ou sonde GPIB) enregistre l'intégralité des trames échangées lors de séquences types :&lt;br /&gt;
* Initialisation et séquence de démarrage (''handshake'') ;&lt;br /&gt;
* Envoi des paramètres d'analyse (température, vitesse, longueur d'onde, tension) ;&lt;br /&gt;
* Réception des données brutes du capteur ;&lt;br /&gt;
* Codes d'erreurs et états de veille.&lt;br /&gt;
&lt;br /&gt;
=== 2. Analyse et décodage des trames ===&lt;br /&gt;
Les flux capturés sont analysés pour identifier la structure du protocole :&lt;br /&gt;
* '''Protocoles textuels (ASCII / SCPI) :''' fréquents sur les balances, pH-mètres, oscilloscopes et spectromètres (ex. commandes de type `:MEAS:VOLT?`).&lt;br /&gt;
* '''Protocoles binaires propriétaires :''' identification des octets d'en-tête (''headers''), de la charge utile (''payload''), du boutisme (''endianness'') des valeurs flottantes et des sommes de contrôle (''checksums'' CRC-16/CRC-32).&lt;br /&gt;
&lt;br /&gt;
=== 3. Réimplémentation en espace utilisateur (User-space Driver) ===&lt;br /&gt;
Pour éviter les problèmes de signature de pilotes noyau (''Kernel Mode'') sous Windows 11 et garantir la stabilité du système hôte, les pilotes LBD sont développés en espace utilisateur (''User-space''). Si un pilote d'instrument échoue, il n'entraîne aucun écran bleu (BSOD) ou panique noyau sur le serveur du laboratoire.&lt;br /&gt;
&lt;br /&gt;
=== 4. Intégration LIMS ===&lt;br /&gt;
Une fois les données décodées, LBD les convertit dans un schéma de données standardisé, permettant l'envoi automatique des résultats vers les systèmes de gestion de laboratoire (LIMS) ou les cahiers de laboratoire électroniques (ELN) sans saisie manuelle ni transfert par clé USB.&lt;br /&gt;
&lt;br /&gt;
== Voir aussi ==&lt;br /&gt;
* [[Laboratory Better Driver]]&lt;br /&gt;
* [[Validation métrologique et calibration LBD]]&lt;br /&gt;
* [[Passerelle matérielle LBD (Secteur médical)]]&lt;/div&gt;</summary>
		<author><name>Seraf1</name></author>
		
	</entry>
</feed>