Dernière mise à jour :
04/10/2026
Présentation
A l'origine, le logiciel ComTools a été développé pour
surveiller des données
transitant simùultanément sur plusieurs ports série RS232, en
compagnie
d'un
espion
RS232
matériel. Cet espion matériel n'était nullement
obligatoire, le
logiciel ComTools pouvant fonctionner en mode direct PC /
Equipement ou PC / PC (avec un câble croisé). Au fil du
temps, le logiciel
s'est vu ajouter des fonctions et des modules spécifiques, le
plus
souvent suite à la demande de collaborateurs. Il permet désormais de
travailler simultanément avec 24 ports com.
 |
Mode
d'utilisation en ASCII
Ce
mode permet de visualiser ou d'envoyer des données de type texte, en
mode ASCII. Usage par exemple avec des modems ou autre appareil
prennant en charge ce mode de communication. |
 |
Mode
d'utilisation en Hexa
Ce
mode permet de visualiser ou d'envoyer des données au format
Hexadécimal, et supporte les trames de longueur fixe
ou variable.
|
Il dispose d'outils de filtrage, de
formatage et d'envoi de données fixes ou aléatoires.
Ce logiciel développé avec Delphi s'appuie sur les
composants VCL AsyncPro de TurboPower, disponibles
sur le site
SourceForge.
Support des ports com virtuels (VCP, Virtual Com Port)
Les ports com virtuels
(VCP)
sont gérés par le logiciel
ComTools depuis la version V2.4. Un port com virtuel peut être lié à un matériel externe au PC
(convertisseur USB/RS232 relié sur un bus USB par exemple) et
être créé ou détruit par Windows à
n'importe quel moment.
Important
:
Le logiciel ComTools ne reconnait que
les ports
qui sont fonctionnels au
moment de son lancement. Il ne
reconnait
pas les
ports virtuels créés après
son lancement.
Vous devez donc vous assurer que les ports que vous souhaitez utiliser
dans ComTools sont actifs avant
de lancer le
logiciel ComTools. De même, il ne faut pas débrancher un adaptateur
USB-COM reconnu au démarrage de Comtools alors que le
logiciel est encore en cours d'exécution.
Avertissements
Le logiciel ComTools a
vu le jour (V1.x) en l'an 2002. Certains des modules intégrés étaient
plus pertients à l'époque qu'ils ne le sont aujourd'hui, je pense
notament aux fonctions de lecture d'un port parallèle (LPT) ou de
transfert de fichiers par protocole ZModem. Pour les dernières
versions, je me suis davantage concentré sur les fonctions
essentielles, à savoir ports virtuels (VCP) et détection et traitement
des données réceptionnées. Les fonctions "non-essentielles" évoquées
ci-devant qui ont été testées à l'époque ne le sont plus
désormais. En cas de dysfonctionnement avec la V4.x, merci de tenter la
dernière version stable V2.4.
Caractéristiques principales
- Possibilité de travailler avec plusieurs
ports com simultanément (jusqu'à 24), contrairement
à un émulateur terminal simple (terminal.exe ou
hyperterm.exe
de Windows par exemple) qui permet de ne travailler que sur un seul
port à la fois.
- Possibilité de fermer ou d'ouvrir les ports
désirés à tout instant sans quitter le logiciel,
ce qui permet de lancer une application nécessitant l'usage des
mêmes ports, en parallèle, sans quitter le logiciel
ComTools.
- Personalisation des paramètres de chaque
port, individuellement (vitesse, contrôle de flux, filtrage et
détection
de trames, etc).
- Personalisation de l'apparance des données reçues,
individuellement pour chaque port (formatage ASCII, Hexa, couleur, etc).
- Générateur de trames de données
intégré, formats ASCII, Hexa, à partir d'un
fichier ou de façon aléatoire.
- Simulation d'équipements, permettant de vérifier le
bon fonctionnement d'un programme ou d'un équipement.
- Enregistrement en temps réel en mémoire vive ou sur
disque, permettant un suivi des données reçues sur une
longue période.
- Analyse des lignes de statut d'un port parallèle, avec
là aussi possibilité d'enregistrement sur disque en temps
réel.
Gestion des paramètres principaux des ports com
Les paramètres de communication (vitesse, parité,
contrôle de flux, etc) sont accessibles dans la fenêtre
d'options, dans la partie de gauche "Configuration Port". Chaque port
peut se voir attribuer des paramètres différents.
Cette fenêtre d'options permet en outre de spécifier dans
quelles conditions le logiciel doit interpreter les données
reçues comme étant des trames à capturer, partie
de droite "Analyseur données reçues". L'analyseur de
données fonctionne selon deux principe généraux.
Soit il n'effectue aucune analyse et toutes les données recues
sont affichées (1ère copie écran), soit il
effectue une analyse sur chaque donnée reçue, et
vérifie si ces données correspondent à des
critères que vous spécifiez vous-même (2ème
copie écran). Les critères de capture peuvent par exemple être définis
par un début de trame spécifique, une fin de trame spécifique
ou encore une longueur de trame spécifique.
Formatage texte des données reçues
Un ensemble d'option permet de définir l'apparence des
données reçues dans l'éditeur principal.
C'est entre autres dans cette fenêtre que l'on décide si
les données reçues doivent être affichées au
format hexadécimal ou au format texte, et avec quelle couleur
(rappelez-vous que le logiciel peut recevoir des données de 16
ports simultanement). C'est également ici que l'on peut
spécifier si un horodatage doit être
ajouté pour chaque information reçue.
Activité des ports
Cette fenêtre montre d'un coup d'oeil le statut de l'ensemble des
lignes physique de chaque port com (Tx, Tx, DCD, DSR, etc).
Cette fenêtre montre son utilité quand il s'agit de suivre
l'état
de plusieurs lignes de communication (Tx, Rx, etc) en travaillant simultanément avec
plusieurs ports COM.
Analyse lignes statut port parallèle (LPT)
Module d'analyse du port parallèle
(LPT) retiré à partir de la version V3.0.x de ComTools
(fonction moins utile en 2022...)
Fonction toujours disponible dans la version V2.4.x.
Ce module permet la surveillance et l'enregistrement en temps
réel sur disque, du changement d'état logique des lignes
de statut d'un port parallèle.
Il suffit de spécifier l'adresse du port parallèle
à surveiller (en général $378 pour le port LPT1),
et de cliquer sur le bouton Start. Si l'enregistreur temps réel
est activé (vous pouvez l'activer avant ou après le
démarrage de ce module), les données seront
tracées sur disque au fil des changements. Pour chaque ligne
d'entrée, il est possible de consiéder l'état
nominal à Haut ou Bas, à l'aide des cases à cocher
Inverser. Et pour simplifier la reconnaissance des lignes
surveillées, vous pouvez même spécifier un
libellé mnémotechnique. Pour plus d'infos concernant le
brochage du port parallèle, merci de consulter le fichier
Connectique LPT.txt joint avec le logiciel.
Attention
!
Ce module (uniquement dispo dans la V2.4) ne fonctionne pas sur des PC dont les droits utilisateur sont
insuffisants. Certains PC d'entreprise, par exemple, peuvent poser des
problèmes parce qu'ils ne sont pas démarrés avec
les droits administrateurs. L'analyse du port parallèle requiert
en effet un adressage bas niveau qui n'est pas simple (ça
l'était bien plus à l'époque avec des routines
toutes bêtes), et j'ai choisi d'utiliser pour ce faire,
l'excellent composant zlportio de Zloba Alexander, disponible sur le
site
http://www.specosoft.com.
Ce fichier est chargé dynamiquement, seulement si vous
démarrez l'analyse du port parallèle. Il est
déchargé automatiquement lors de l'arrêt de
l'analyse. Ainsi, pas de message d'erreur gênant au lancement du
logiciel sur un PC avec des droits restreints !
Convertisseur de formats
Un petit ajout qui apporte une aide certaine quand on
doit jongler
entre décimal, binaire et hexa et qu'on ne sait pas que la fonction
existe sur les calculatrices logicielles possédant la fonction
"développeur" ;)
Ce convertisseur me sert encore de temps en temps pour les nombres
décimaux
supérieurs à 255 (> à FF ou 11111111).
Mode Echo
Ce module permet de renvoyer sur une ligne TX, toutes données
reçue sur la ligne RX d'un même port COM. Cette fonction est activable
ou
désactivable pour chaque port. Une activation /
désactivation globale est également possible.
Remarque :
attention aux
rebouclages infinis quand une ou plusieurs boucles sont mises en oeuvre
en même temps au niveau logiciel et au niveau matériel, sur un ou
plusieurs ports ! En particulier, l'appareil auquel on envoie des
données ne doit pas lui aussi effectuer de bouclage par un mode écho
interne.
Enregistreur temps réel
Ce module permet de stocker sur disque les données
reçues, en temps réel (au fil de l'eau).
Il est particulièrement adapté aux machines dotées de peu de
mémoire RAM et sur lesquelles le
logiciel doit tourner longtemps (beaucoup de données
reçues). Les données enregistrées sur disque comportent le formatage
spécifié par l'utilisateur, ce qui signifie qu'elles sont
identiques à celles qui apparaissent dans l'éditeur principal.
Générateur de trames
Le module Générateur de trame permet d'envoyer de
façon séquentielle des données sur le port de
votre choix.
Les données peuvent être en hexa ou en ASCII, et
être générées en RAM ou provenir d'un
fichier tout prêt. Quand les données sont
générées en temps réel, vous pouvez
spécifier à quel rythme elles doivent être
transmises. Vous pouvez aussi limiter la longueur de chaque trame
émise à une valeur voulue. Configuré en mode temps
réel, ce module me sert principalement pour apréhender le
fonctionnement de certains équipements et évaluer leur
comportement sur une succession de données qu'ils ne recevraient
pas en temps habituels. Configuré en mode fichier, des
équipements peuvent recevoir des données attendues, qui
devraient normalement les inciter à réagir
(répondre). Ce module simplifie grandement les phases de tests
(vérification plus rapides données émises et données
reçues).
Simulateur d'équipement
Le simulateur d'équipement ne paie pas de mine il est vrai. Et
pourtant, c'est sans doute l'outil dont je me suis le plus servi
à ce jour.
Il permet de définir un ensemble de commandes à envoyer
sur un port donné, sur réception de données
spécifiques. L'exemple donné ici (sur la copie
d'écran) du simulateur de modem vous aidera à comprendre
le principe de fonctionnement de ce module. Vous développez un
logiciel de communication, et vous souhaitez vérifier son
fonctionnement sur un modem. Mais vous n'avez pas le modem en question
sous la main. Ce simulateur va pouvoir comporter une ligne indiquant
que si la chaine de caractères reçue est "ATI", il doit
envoyer la chaine de caractères "V3.02", suiv d'un retour
chariot, suivi de la chaine de caractères "OK", et finalement
terminée par un deuxième retour chariot.
Test des ports (parties logicielle et matérielle)
Cette fenêtre permet de tester le bon fonctionnement des ports
reconnus sur le PC, sous réserve bien sûr qu'ils puissent être ouverts.
Exemple de test avec bouclage Tx/Rx sur COM21 et aucun bouclage Tx/Rx sur COM14
Pour réaliser ce test, vous devez au préalable reboucler
les lignes RX et TX du port série (broches 2 et 3 sur une prise SUB-D 9
points). Pour les adaptateurs USB-COM inclus
dans
un connecteur USB et qui se terminent sur de simples fils, il
suffit de relier les deux fils Tx et Rx (souvent fils vert et
blanc). Le test
consiste à envoyer des données connues sur TX et
à vérifier que ces données reviennent bien (en intégralité et sans
erreur) sur RX, il concerne donc la partie logicielle
et
la partie
matérielle. La configuration du formatage des données reçues
conditionne le contenu des données émises pour le test. Avec une
configuration sur détection de paquet, la trame de donnée émise est
plus longue et le résultat du test plus pertinent -surtout pour des vitesses de transmission très élevées).
Le
test peut être réalisé soit à la vitesse de transmission actuellement
spécifiée pour le port à tester, soit à une haute vitesse de
2 Mbps (dans le second cas, la vitesse spécifiée par l'utilisateur
est restaurée après le tests). A noter qu'une vitesse de transmission
aussi élevée que 2 Mbps correspond souvent au débit maximum des
adaptateurs USB-COM et que les données se perdent plus facilement avec
de grandes longueurs de câbles (en RS232, le transport des données se
fait sur un fil unique et donc pas en mode différentiel) !
Attention !
Avec certains adaptateurs USB-COM, le test peut réussir ou échouer
selon le port USB de l'hôte sur lequel on le branche (problèmes
potentiels
notament avec certains hub USB externes). De préférence, effectuer le
test avec l'adaptateur relié directement sur un des ports de
l'ordinateur (sans passer par un hub). A noter qu'un même
adaptateur USB-COM peut se voir attribuer un numéro de port COM
différent selon le
port USB utilisé, même s'il s'agit de la même machine...
Test en RS422 ou RS485 ?
Il
est tout à fait possible de réaliser un test sur
une liaison différentielle de type RS422 ou RS485, moyennant
l'utilisation d'adaptateurs idoines. La seule contrainte ici est de
disposer côté Tx d'un module configuré en émission et de disposer côté
Rx d'un module configuré en réception. Un module unique
fonctionnant en mode half-duplex (émission ou réception à un instant
donné) ne peut pas être testé.
Transfert de fichiers
Il s'agit là d'un module dont je me suis en
réalité peu servi, mais qui semble fonctionner
correctement, au moins pour le transfert de fichiers sous protocol
ZModem, que j'ai utilisé plusieurs fois pour configurer des
équipements.
C'est dans la zone de gauche que vous spécifiez si le module de
transfert doit travailler en mode émission ou en mode
réception. La zone de droite donne les indications statistiques
et effectives du transfert pendant son déroulement.
Avertissement
: ce module n'a pas été testé depuis la V3 du logiciel ComTools !
Téléchargement
Quel courage ! Vous êtes arrivés jusque là !
;-)
Voir Avertissements donnés
à la page Freewares.
Tests réalisés avec les versions V2.4.4.0 et V4.3.0.0
(principalement avec des adaptateurs FTDI et CH340) :
| PC |
OS |
OS (Built) |
Proc |
Vitesse |
RAM |
V2 |
V4 |
Remarques |
|
| Asus #1 |
Win 11 Pro |
23H2-22631.5909 |
i7-4710 |
2.5 GHz |
16 Go |
 |
 |
Fonctionne |
|
| Asus #2 |
Win 11 Famille |
25H2-26200.8655 |
i9-ultra |
2.7 GHz |
32 Go |
 |
 |
Fonctionne |
|
| Asus #3 |
Win 11 Pro |
25H2-26200.8655 |
i5-1340H |
2.1 GHz |
16 Go |
 |
 |
Fonctionne |
|
| Acer #1 |
Win 10 Famille |
22H2-19045.6466
|
Celeron N2940 |
1.8 GHz |
8 Go |
 |
 |
Fonctionne |
|
| Acer #2 |
Win 11 Famille |
21H2-22000.2538 |
Pentium 2117 |
1.8 GHz |
4 Go |
 |
 |
Fonctionne |
|
| Sony #1 |
Win 8.1 |
- |
Pentium 2020M |
2.4 GHz |
16 Go |
 |
 |
Fonctionne |
|
| HP #1 |
Win 10 Famille |
22H2-19045.6466 |
AMD Radeon |
3.0 GHz |
8 Go |
 |
 |
Fonctionne |
|
ComTools
V4.3.0.0 - (02/10/2026)
ComTools
V2.4.4.0 - (13/12/2009)
A_Lire.txt
Archives (exécutables)
:
ComTools
V2.4.3.4 -
ComTools
V2.4.3.0 -
ComTools
V2.4.2.1 -
ComTools
V2.4.0.0
Installation du logiciel
Aucun logiciel d'installation n'est fourni avec cette distribution. Il
vous suffit d'extraire les fichiers de l'archive zip à
l'aide d'un logiciel supportant le format Zip (
WinZip
ou
WinRar par
exemple), et de les
mettre dans un répertoire de votre choix. Vous êtes ainsi
assuré qu'aucun fichier ne va s'installer ailleurs que là
où vous le souhaitez (répertoires Windows ou Windows
System), simplifiant ainsi le processus de
désinstallation éventuel, puisqu'il vous suffit de
supprimer purement et simplement le répertoire en question.