====== Wallboard Alcatel Wifi ====== ===== Objectif ===== Sauver un vieux Wallboard Alcatel (ref 3BD19232AC) au bord de la benne et voir ce que l'on peut faire avec {{http://doku.floriantales.fr/lib/plugins/ckgedit/ckeditor/plugins/smiley/images/wink_smile.png?nolink&23x23|wink}}. ===== Introspection ===== ==== Electronique ==== Voici le nouveau jouet :\\ {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:alcatel_wallboard_3bd19232ac.jpg?nolink&500x129|alcatel_wallboard_3bd19232ac.jpg}}\\ \\ Un petit démontage pour observer la carte de contrôle :\\ {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:carte_commande.jpg?direct&600x300|carte_commande.jpg}}\\ Il dispose d'une entrée RS232 sur 2 broches, les 2 autres répètent le signal pour brancher des wallboard en série.\\ Notons la qualité du routage qui a nécessité des retouches manuelles, et la masse de l'alim pompée sur le connecteur carte (la pastille en haut à droite n'est pas routée) .. encore un retroplanning qui a tiré le projet .. {{http://doku.floriantales.fr/lib/plugins/ckgedit/ckeditor/plugins/smiley/images/devil_smile.png?nolink&23x23|devil}}\\ \\ Zoom sur la partie acquisition RS232. Le H11L1 est un optocoupleur à sortie logique qui assure la conversion niveaux Rs232 vers niveaux TTL : |{{:electronique:micro_controleurs:esp8266:alcatel_wallboard:acquisition_rs232.png?direct&400x224}}|{{:electronique:micro_controleurs:esp8266:alcatel_wallboard:selection_405.png?direct&275x296}}| \\ Les signaux TTL et RS232 sont inversés par convention. Inutile de faire cracher la sortie Arduino TX directement en entrée de l'optocoupleur! Oui on à l'air d'un con quand on s'en rend compte.\\ Je ne rentre pas dans les détails des normes fonctionnelles et électriques RS232 (V24 + V28). Google s'en charge très bien pour nous.\\ \\ \\ Exemple d'une trame émise en sortie RS232 du PC et reçue sur l'entrée TTL du wallboard (2 fois 0x55 soit 0b01010101 sur 8 bits):\\ {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:ds1z_quickprint1.png?direct&600x360}} Le point sur les connexions : ^v24 Wallboard Input^DB9 PC Output^Decription| |1|5|Gnd| |2|3|Data| \\ ==== Protocole ==== De ce coté nous avons de la chance, le protocole du wallboard ne casse pas des briques et reprend presque le codage ascii. La configuration du port série : ^Serial Configuration^ | |Baud rate|4800| |Bit data|8| |Stop bit|2| |Parity|None| |Flow control|None| La table des caractères hexa que le uC interprète ([[https://docs.google.com/spreadsheets/d/11hYIM18tcB_eLrxln9NWC1hK4nzJ-QVUREwNIpNKrRw/edit?usp=sharing|Google Sheet]]) : {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:wallboard_code.png?direct&1000x439}}\\ \\ Source : [[http://www.frameip.com/forums/?topic_id=5499&forum=architoip|www.frameip.com]]\\ J'ai trouvé ce manuel technique Alcatel, il correspond à un modèle IP plus récent aussi compatible V24 : {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:manuel_technique.pdf|manuel_technique.pdf}} Il suffit donc de transmettre des caractères hexa pour obtenir satisfaction.\\ Exemple d'une trame envoyée en ligne de commande sur l'interface série du PC : echo -ne "\x8e\x80\x88\x04Ca marche\x87\x88\x15gromit! \x83\;)"> /dev/ttyS0 Reset - > Rouge → Move to line 0 char 4 → Ca marche → Vert → Move to line 2 char 5 → gromit! → orange > ;) Résultat : {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:premier_test.jpg?direct&500x115|premier_test.jpg}} \\ ===== Interface Wifi UDP ESP8266 ===== ==== Câblage ==== L'alimentation carte étant en 5v on peut directement autoalimenter un petit Wemos.\\ J'utilise la sortie UART1 de l'esp à brancher directement en entrée de l'acquisition TTL du micro contrôleur du Wallboard : ^Sortie ESP^Entrée uC Wallboard MC68HC705| |{{:electronique:micro_controleurs:esp8266:alcatel_wallboard:uart1_tx_esp8266.png?direct&250x247}}|{{:electronique:micro_controleurs:esp8266:alcatel_wallboard:68hc705.png?direct&250x249}}| \\ La sortie TTL de l'ESP est en 0→3,3v volts, mais l'entrée MC68HC0705 s'en accommode tout à fait.\\ \\ Montage définitif :\\ {{:electronique:micro_controleurs:esp8266:alcatel_wallboard:wemos_to_wallboard.jpg?direct&400x297|wemos_to_wallboard.jpg}}\\ \\ J'ai mis une petite diode schottky en entrée de l'alimentation du Wemos.\\ En cas de branchement sur le port USB je doute que le PC ai très envie d'alimenter tout le Wallboard qui tire plus de 5A ! {{http://doku.floriantales.fr/lib/plugins/ckgedit/ckeditor/plugins/smiley/images/angel_smile.png?nolink&23x23|angel}}\\ \\ ==== Code Arduino ==== Sur la base du sketch [[:electronique:micro_controleurs:arduino_ide:sketchbook|UDP_to_SERIAL_Wifi_softAP]] : [[https://github.com/floriantales/Alcatel_Wallboard_ESP8266|Alcatel_Wallboard_ESP8266]]\\ \\ Exemple de commande par UDP en bash : echo -en '\x8EWALLBOARD WIFI!'> /dev/udp/10.10.10.1/4210 {{http://doku.floriantales.fr//lib/plugins/ckgedit/fckeditor/userfiles/image/electronique/micro_controleurs/esp8266/alcatel_wallboard/wifi_udp_bash.jpg?direct&400x300|doku.floriantales.fr_lib_plugins_ckgedit_fckeditor_userfiles_image_electronique_micro_controleurs_esp8266_alcatel_wallboard_wifi_udp_bash.jpg}}\\ \\ Voilà, il ne reste plus qu'à se faire plaisir, en [[http://www.tweakpc.de/forum/sonstige-hardware/41000-steuerung-von-alcatel-wall-board.html#post643991|shell]], en [[https://github.com/bitcoinsoftware/lightboard/|python]] … ~~socialite~~