Nous allons voir comment transformer une statio météo Lacrosse Technology WS2305 en station Méteo Wifi avec connexion sur un serveur. Pour cela nous allons utiliser la fameuse fonera légèrement modifiée.
ATTENTION: L’auteur ne pourra être tenu responsable en cas de détérioration de vos équipements. Sachez que ces bidouilles font « sauter » la garantie de la fonera et de la station météo…
Tout d’abord, occupons nous de la station météo. Après avoir retiré les vis présentes sur la face arrière, nous pouvons accéder à la carte électronique de la station. Et là surprise, il y a très peu de composants.
Tout le coeur de la station est dans une puce coulée dans l’époxy donc impossible à identifier. Ce que nous devons rechercher, ce sont les entrées sorties TTL du port série avant la conversion RS232. Pas de max232 ou équivalent, la transformation des signaux a l’air d’être réalisée avec des diodes et des transistors. A l’aide d’un oscilloscope, nous recherchons des signaux TTL aux alentours de ces transistors; dans le même temps, nous dialoguons avec la station à l’aide du logiciel open2300 installé sur le PC.
Après quelques minutes de recherches, j’ai localisé 2 points avec des signaux TTL présents lors des transferts. Un des deux point présente un « traffic » beaucoup plus important que le second, il doit s’agir du TX (envoie les informations au PC)
alors que l’autre doit être RX (recoit uniquement les commandes du PC).
Afin de confirmer tout cela, j’ai ressorti mon adaptateur TTL/USB que j’ai branché sur ces deux ports et sur une masse trouvée au niveau du porte piles.
- Rouge: TX
- Blanc: RX
- Blindage: GND
Une fois le cable série d’origine débranché, j’ai tenté un transfert via l’adaptateur TTL/USB et là, Oh miracle, la station répond aux commandes et transmet des informations 🙂
pierre@EquinoxeFR:~/Download/open2300-1.10$ ./fetch2300 Date 2007-Nov-24 Time 14:09:03 Ti 21.5 Timin 21.5 Timax 21.5 TTimin 00:00 DTimin 2001-01-01 TTimax 00:00 DTimax 2001-01-01 To 81.1 Tomin 81.1 Tomax 81.1 TTomin 00:10 DTomin 2000-00-00 TTomax 00:10 DTomax 2000-00-00 DP 81.1 DPmin 81.1 DPmax 81.1 TDPmin 00:10 DDPmin 2000-00-00 TDPmax 00:10 DDPmax 2000-00-00 RHi 59 RHimin 59 RHimax 59 TRHimin 00:00 DRHimin 2001-01-01 TRHimax 00:00 DRHimax 2001-01-01 RHo 67 RHomin 67 RHomax 67 TRHomin 00:07 DRHomin 2001-01-01 TRHomax 00:07 DRHomax 2001-01-01 WS 51.0 DIRtext N DIR0 0.0 DIR1 0.0 DIR2 0.0 DIR3 0.0 DIR4 0.0 DIR5 0.0 WC 81.1 WCmin 81.1 WCmax 81.1 TWCmin 00:10 DWCmin 2000-00-00 TWCmax 00:10 DWCmax 2000-00-00 WSmin 0.0 WSmax 0.0 TWSmin 00:00 DWSmin 2001-01-01 TWSmax 00:00 DWSmax 2001-01-01 R1h 0.00 R1hmax 0.00 TR1hmax 00:00 DR1hmax 2001-01-01 R24h 0.00 R24hmax 0.00 TR24hmax 00:00 DR24hmax 2001-01-01 Rtot 0.00 TRtot 19:10 DRtot 2007-11-22 RP 1032.100 RPmin 1032.100 RPmax 1032.100 TRPmin 00:00 DRPmin 2001-01-01 TRPmax 00:00 DRPmax 2001-01-01 Tendency Steady Forecast Cloudy
Il ne reste plus qu’à souder 3 câbles pour sortir RX,TX, GND de la station.
A bientôt pour la deuxième étape: Le branchement sur la Fonera.
Info:
Si comme moi, vous n’utilisez pas l’anémomètre (en appartement c’est difficile), les diverses commandes du projet open2300 sont très longues à s’exécuter. En effet, en cas d’erreur de mesure de l’anémomètre, il y a plusieurs essais espacés de 10 sec. Faites un petit tour dans le code du fichier rw2300.c
afin de commenter toutes les lignes : sleep_long(10); //wait 10 seconds for new wind measurement
. Vous verrez que la récupération des données est beaucoup plus rapide.
Bonjour.
Pensez vous que l’on puissent connecter directement les points TTL Rx et Tx de la station sur le routeur Fonera, ou par exemple sur mon routeur WRT54GS qui possèdent des connecteurs TTL Rx Tx en 3.3V?
Ces connecteurs sur le routeurs peuvent être utilisés en rs232 via un PIC, mais peut on passer outre cette conversion via les TTL ?
Merci pour votre aide.
@Tibo,
Oui, pour moi c’est possible a condition que coté routeur les signaux TTL soit du même voltage. Sinon il faut adapter les voltages via des résistances par exemple.
Comme ça on dialogue de TTL à TTL sans passer par une conversion RS232 inutile. Personellement je n’ai pas continué dans cette voie pour 2 raisons:
* Ma fonera n’avait pas une connexion cliente très « stable » en WPA2
* Ma fonera refuse de booter si une console série est présente. Visiblement je ne suis pas le seul à avoir ce problème.
Bon, j’ai testé toute la soirée un moyen de communiquer avec la station….
J’ai récupérer le packet là: http://ipkg.nslu2-linux.org/feeds/optware/ddwrt/cross/stable/open2300_1.10-1_mipsel.ipk
J’ai du le décompresser pour récupérer les fichiers joints.
J’ai paramétré le fichier .conf pour y mettre /dev/tts/1 qui correspond au serial port du WRT54GS.
A chaque fois que je lance open2300 ou « ./light on open2300.conf » il me met l’erreur: Unable to open serial device /dev/ttyS0
Faut il paramètré le port avec stty?
J’ai éssayé avec stty -F /dev/tts/1 speed 2400, rien à faire…
Pour voir si la communication se faisait qd même, j’ai testé en telnet cat /dev/tts/1 , il a fermé le « cat » 2 fois sur 5….
Si quelqu’un a une idée… merci d’avance!
Ca marche!!!!
La liaison en ttl marche du tonnerre!!! lol
Par contre, la paketage open2300_1.10-1_mipsel.ipk que j’ai utiliser ne s’installe pas correctement…
Il ne tient pas compte du fichier open2300.conf que j’ai configurer, du coup il ne prend pas la ligne « SERIAL /dev/tts/1 ». fetch2300 se base sur la .Conf par défaut avec en paramètre « SERIAL /dev/ttyS0 ». Pour réussir à communiquer avec la station, j’ai fais un « ln – s /dev/tts/1 /dev/ttyS0″….
C’est bon, la compilation se fait bien.
je voudrais mettre ma station meteo (WS2355) en direct sur ma fornera mais je n’arrive pas à trouver le paketage « open2300_1.10-1_mipsel.ipk » correcte pour ma fonera. es ce possible d’avoir ce paketage?? ou bien le programme compilé pour la foenra. merci
Bonjour,
Je suis en train d’essayer d’installer ma station météo WS2300 sur ma fonera 2.0n mais je rame un peu.
Je pense que je n’ai pas réussi à installer mon adaptateur usb/serial malgré l’installation de kmod-usb-serial-pl2303
Cependant je ne connais pas trop linux donc je n’ai peut-être pas bien fait cette installation.
Comment puis vérifier que mon adaptateur est bien installé ? Il n’apparait pas dans /dev/ttyS0 (ou 1) ?
Pour finir, quand j’installe open2300 en executant : ./open2300-dist.conf il ne semble pas trouver l’adaptateur usb/serial.
Merci de me dire ce que je peux faire car là je bloque vraiment.
Julien
@Julien,
la commande dmesg après insertion du module série peut te donner des informations sur le chargement du module.
Si lsmod ne te donne pas ton module pl2303 chargé tu peux forcer sont chargement avec un modprobe xxx.ko ou xxx est le nom exact du fichier de module.
Tu dois trouver ensuite un périphérique de type /dev/ttyUSB0
Merci, en fait mon adaptateur est un ftdi donc normal qu’il ne s’installe pas correctement avec pl2303.
C’est bon maintenant dmesg me dit que mon adaptateur de maintenant attaché à ttyUSB0.
Cependant, je n’arrive pas à installer utiliser open2300. J’ai installé le package open2300_1.11 (mipsel).ipk ensuite j’ai modifié open2300.conf pour y indiquer le chemin de mon adaptateur (/dev/ttyUSB0) mais après je bloque.
Quand je fais ./open2300 j’obtiens « ./open2300: can’t resolve symbol ‘__uClibc_start_main' »
Quand je fais ./open2300.conf j’obtiens : « SERIAL_DEVICE : not found »
Que puis-je faire ?
Merci d’avance.
Salut
Moi je me suis monté un convertisseur ttl/serie pour connecter ma station météo pour ne pas perde la garantie.
Mais quand je connecte la station après le boot que je configure bien le fichier open2300.conf et que je tape fetch2300 sa mouline mais ça n’affiche rien et même si je le laisse 1h.
cat /proc/tty/driver/serial
serinfo:1.0 driver revision:
0: uart:16550A mmio:0xB1100003 irq:37 tx:119 rx:0 RTS|DSR|CD|R
Ne fais t’il pas configurer le port série de la fonera? Merci
Bonjour,
Ne parvenant plus à faire fonctionner ma stations WS2307 à l’aide du port série, je souhaite utiliser un montage similaire pour continuer à utiliser cette station.
J’ai essayé les ports séries natifs et aussi en passant par un adaptateur USB, j’ai compilé des versions différentes, etc… toujours rien en liaison série.
J’ai utilisé Open2300 pendant 2 ans et maintenant je n’arrive plus depuis mon déménagement.
Pourriez-vous m’expliquer comment trouver les connecteurs TTL rx et tx sans l’aide d’un oscilloscope? Avec un multimètre c’est possible?
Si d’autres personnes sont confrontés au même pb, n’hésitez pas 😉
Merci