web-dev-qa-db-fra.com

Qu'est-ce qu'un bon moniteur de port série gratuit pour la rétro-ingénierie?

Je suis en train de reconstituer un protocole série et je suis frustré par de mauvais outils. Quelqu'un connaît-il un bon outil gratuit pour enregistrer des données vers/depuis les ports série sous Windows?

Exigences:

  • Doit être gratuit
  • Ne doit pas prendre le contrôle du port (c'est-à-dire doit accrocher les API de fichier ou le noyau plutôt que d'essayer d'ouvrir l'appareil)
  • Doit avoir une sorte de fonctionnalités de filtrage
  • Écrit des journaux lisibles par l'homme ou binaires, de préférence dans un format facile à analyser

Des idées? Portmon fonctionne, mais ses journaux sont difficiles à utiliser et ses filtres sont effectivement inutiles; J'ai également essayé quelques outils commerciaux et rien ne semble correspondre à la facture.

38
Cody Brocious

Portmon de sysinternals (maintenant MSFT) est probablement le meilleur moniteur.

Je n'ai pas trouvé un bon outil gratuit qui émule un port et enregistre/rejoue les communications. Les commerciaux étaient chers et si limités ou si complexes si vous voulez répondre aux commandes que j'ai fini par utiliser attendez et python sur une deuxième machine).

11
Martin Beckett

J'entends beaucoup de bonnes choses à propos de com0com , qui est un émulateur de port logiciel. Vous pouvez "connecter" un port série physique à travers celui-ci, de sorte que votre logiciel utilise le port virtuel (surveillé) et transfère tout le trafic vers/depuis un port physique. Je ne l'ai pas utilisé moi-même, mais je l'ai vu recommandé ici sur SO beaucoup.

15
Coderer

J'ai suivi cette voie et j'ai finalement opté pour une étendue de données matérielles qui effectue une surveillance en ligne non instructive. Les solutions logicielles que j'ai essayées n'ont pas fonctionné pour moi. Si vous aviez un PC de rechange, vous pourriez probablement en construire un, quoique plutôt encombrant. Cela portée des données logicielles peut fonctionner, tout comme ce , mais je n'ai pas essayé non plus.

2
SmacL

Je prendrais un analyseur logique et le relierais au port série. Je pense qu'il n'y a probablement que deux lignes dont vous avez besoin (Tx/Rx), donc il devrait y avoir beaucoup d'analyseurs logiques bon marché disponibles. Cependant, vous n'avez pas de ligne d'horloge à portée de main, ce qui pourrait devenir délicat.

1
Nick

Oups, je ne peux pas encore commenter (!) Mais concernant: Nick et l'analyseur logique, méfiez-vous: les niveaux de signal RS232 ne sont généralement pas compatibles avec Logic Analyzer sauf si vous obtenez/fabriquez une sonde série spéciale. Un port RS232/série "approprié" peut utiliser des oscillations de +/- 12 V (sur tous les signaux) et parfois plus. Un ordinateur portable utilise parfois des oscillations de 0 à 5 V (et souvent ne fonctionnera pas avec de vraies interfaces série), il pourrait donc fonctionner avec une interface LA vbasic de niveau ttl.

0
andora