Les circuits imprimés sont arrivés

Les circuits imprimés du shield 3615 pour Minitel et Arduino sont arrivés aujourd’hui. J’ai soudé les différents composants du shield : tout est fonctionnel. Pour ceux que ça intéresse, j’ai deux circuits imprimés de cette série en stock (sans les composants donc). Tarif unitaire : 16 € avec les frais de port.

Tweeter avec un Minitel

Le matériel à mettre en oeuvre : Le minitel, le câble DIN-USB, une Arduino Uno, le shield 3615, un Raspberry Pi.

On crée un compte Twitter puis une application Twitter depuis cette adresse : https://apps.twitter.com.

On règle les permissions.

On récupère les clés qui sont dans les 4 zones rouges. Elles seront utilisées ultérieurement dans le fichier Python minitel.py.

Le programme minitel.py utilise Twython.
Il faut donc installer (sudo apt-get install) :
pour Python 2.7 : python-twython / python-oauth / python-oauth2client / python-oauthlib / python-requests-oauthlib
pour Python 3 : python3-twython / python3-oauth / python3-oauth2client / python3-oauthlib / python3-requests-oauthlib

Pour que le programme minitel.py se lance dès qu’on allume le Raspberry Pi, on ajoute la ligne suivante dans le fichier /etc/rc.local :
su -l pi -c "python /home/pi/3615/minitel.py &"

Dans le fichier /boot/cmdline.txt , il faut enlever « console=ttyAMA0,115200 ».

Enfin, pour pouvoir tweeter, le Raspberry Pi doit être à l’heure sinon on a en retour le message « Twitter API returned a 401 (Unauthorized), Timestamp out of bounds. ». J’ai donc ajouté une horloge temps réel sur le Raspberry Pi : http://www.nagashur.com/wiki/doku.php?id=raspberry_pi:ds3231_rtc_horloge

Pour consulter l’heure et la date contenue dans le module :

sudo hwclock

Pour mettre à l’heure le Raspberry Pi manuellement :

sudo date -s "2017-06-18 17:10"
sudo hwclock -w

Pour ce qui concerne l’interface Minitel gérée par l’Arduino, le programme qui utilise Minitel1B_Soft est ici.

Enfin, il reste à relier le shield 3615 au Raspberry Pi :
TX0′ du shield > RXD du Raspberry Pi (broche 10)
RX0′ du shield > TXD du Raspberry Pi (broche 8)
GND du shield > GND du Raspberry Pi (broche 6)

Fabrication du câble Minitel-Shield

Se procurer le matériel suivant :

  • Minitel 1B avec une prise péri-informatique disposant d’une sortie alimentation sur la broche 5 (type Cu5 / Cu; / Cu< / Bu0 et suivants).
  • Cordon USB A mâle – USB B mâle.
  • Fiche Din mâle 5 contacts à 45° avec collier serre-câble.
  • Gaine thermorétractable transparente 1,2 mm avant retreint.

Le principe : On coupe le connecteur USB B du cordon et on le remplace par la fiche Din.

Pour tout comprendre, partons de la documentation du Minitel :

Les numéros de broches sont positionnés de la même manière pour la fiche DIN mâle vue côté soudures.

Concernant le connecteur USB A, nous avons :

Etant donnés les choix faits au niveau du shield 3615 :
D- vers broche 8 de l’Arduino
D+ vers broche 9 de l’Arduino

Etant donnée la ligne de code suivante dans les exemples de la bibliothèque Minitel1B_Soft :
Minitel minitel(8, 9); // RX, TX

Il faudra souder, pour avoir un câble croisé :

  • Le fil vert à la broche 1 de la fiche DIN
  • Le fil noir à la broche 2 de la fiche DIN
  • Le fil rouge à la broche 5 de la fiche DIN
  • Le fil blanc à la broche 3 de la fiche DIN

Résolution du problème lié à la bibliothèque SD (Arduino 1.0.5) sur l’ATmega1284P

Pour utiliser la bibliothèque SD standard avec l’ATmega1284P, il faut modifier le fichier Sd2PinMap.h que l’on trouve dans le répertoire du logiciel Arduino à cette adresse (sur ma Debian 8) :
/usr/share/arduino/libraries/SD/utility/Sd2PinMap.h :
On tapera dans la console : sudo geany sd2PinMap.h (pour éditer le fichier en mode administrateur)