Afficheur téléphonique pour PC

Description

Il y a quelque temps, je me suis abonné au service de l'afficheur téléphonique afin de savoir d'avance qui m'appel. Malheureusement, mon module d'afficheur ayant un espace de stockage limité, il n'était pas possible de conserver beaucoup d'appels reçus en mémoire sans les transcrire manuellement sur l'ordinateur. Je me suis donc intéressé au fonctionnement de l'afficheur. Mon but était de trouver un moyen pour que les appels reçus puissent être enregistrés par un ordinateur.

Après quelques recherches, j'ai compris le fonctionnement, mais je n'ai pas réussi à commander les pièces nécéssaires car elles étaient discontinuées! J'ai donc eu l'idée d'acheter un module d'afficheur le moins cher possible, pour pouvoir utiliser les pièces à l'intérieur. Mais quand j'ai ouvert le module, déception. Il y avait une seule puce, qui fesait tout. Controle de l'écran, du bouton, et réception des appels.

Finalement, quelqu'un m'a donné un afficheur datant de quelques annés. Quand je l'ai ouvert, j'ai été très content car il utilisait le même type de pièces que je recherchait. Il y avait maintenant un seul petit problème. Le démodulateur utilisé nécéssitait un nombre assez élevé de composantes externes, contrairement à celui que j'aurait voulu. Mais j'ai trouvé une bonne solution.

J'ai simplement rajouté au module d'afficheur les pièces nécéssaires pour transmettre à un ordinateur les informations sur l'appel reçu, tout en m'assurant que le module restait fonctionnel en lui-même.


Détails

Le système d'affichage d'appels téléphonique au canada fonctionne de la manière suivante:

Entre la première et la deuxième sonnerie, la centrale téléphonique envoi des donnés séries modulés, à 1200 Bauds, 8N1. Les bits sont alors démodulés par le démodulateur de l'afficheur. Il reste alors simplement à interprèter les informations reçus.

Il existe 2 standards pour le format des donnés. SDMF (Simple Data Message Format) et MDMF (Multi Data Message Format). SDMF est le premier ayant été utilisé, et permettait seulement de transmettre le numéro de téléphone et l'heure de l'appel. MDMF (celui qui est utilisé chez moi), permet de recevoir plusieur types de donnés, dont le Numéro, Nom, Heure de l'appel, Localité(Est-ce un appel local ou non?)...




La modification

Mon afficheur utilise la puce MT8843. Les donnés démodulés sortent donc de la broche 17(data), à une vitesse de 1200 Bauds, si la puce est en mode 0. Le mode 0 est choisi en mettant le broche 9(mode) au ground. Par chance, mon module utilisait le mode 0!. Pour transmettre ses donnés à l'ordinateur, rien n'est plus facile que d'utiliser un port série. Par contre, il faut convertir le voltage TTL 0-5Volt du MT8843 au niveaux RS232, soit environ -12 et +12. Aussi, pour protéger mon ordinateur, je souhaitais isoler optiquement l'afficheur de l'ordinateur. Voici le schéma de comment je m'y ai pris:


Le signal en provenance du MT8843 controle un transistor NPN (2n3904 sur le plan, mais un 2n2222 convient aussi) qui pilote le led de l'opto-coupleur. Dans cette configuration, lorsque qu'il y a un 1 qui sort du MT8843, le led de l'opto-coupleur s'allume, ce qui met -12 Volts sur le signal RD (Receive Data). Si il y a un 0 quit sort du MT8843, le led de l'opto-coupleur ne s'allume pas, alors il y a +12 Volts sur le signal RD.

Comme on peut le voir sur le schéma, les voltages +12 et -12 Volts du coté RS232 proviennent de l'ordinateur. Étant donné que l'ordinateur ne transmet jamais rien, le signal TD reste en permanance à -12 Volts, et le signal DTR est mis à +12Volts par le logiciel.

Voici le site duquel je me suis inspiré pour la convertion TTL à RS-232. http://www.piclist.com/techref/io/serial/ttl-rs232.htm



Photos

Voici quelques photos de la modification:



Note: Après avoir pris ces photos, j'ai fixé le tout avec de la colle-chaude pour m'assurer que rien ne bouge à l'intérieur.



Logiciel

J'ai écrit un logiciel pour logger les appels téléphoniques que je reçoit. Il s'agit d'un petit démon que j'utilise sous Linux. Je l'ai nommé cidlogd.

Voici le code source:
cidlogd.tar.gz




Avertissement

JE NE SUIS PAS RESPONSABLE SI VOUS UTILISEZ CE CIRCUIT ILLÉGALLEMENT POUR ESPIONNER LA VIE PRIVÉE DES GENS.
Je ne saurais être tenu responsable pour les dommages que l'utilisation des informations ou la mise en œuvre des instructions présentées sur cette page pourrait causer à votre équipement, à vous-même ou à autrui. Aussi, je ne donne aucune garantie quant à l'exactitude des informations et à leur fonctionnement.