📖 Chapitre 24/27 — La domotique chez soi Voir le sommaire →
← Retour
domotique

Préparer le Raspberry Pi

Cédrix · 23/05/2026
Modifié le 23 mai 2026 à 05h18

1/ 7 j  ·  1/ 14 j  ·  1/ 30 j  lecteurs

Contexte

Les articles précédents ont décrit le matériel d’interface (bornier, démodulation ASK) et le protocole texte qui sort de l’UART une fois le signal démodulé (trames TIC, étiquettes, checksum).

Reste à préparer la machine qui va lire et exploiter ce flux : un Raspberry Pi configuré pour recevoir le signal sur son port série, joignable sur le réseau, et prêt à compiler les outils nécessaires. C’est l’objet de cet article. Le prochain installera raspjson, le programme qui lit le flux TIC et produit du JSON.


Choix du Raspberry Pi

Trois besoins matériels :

  • une liaison série pour dialoguer avec la sortie démodulée de la TIC ;
  • une connexion réseau pour exposer ou transmettre les données collectées ;
  • un espace de stockage pour l’OS, les outils et un éventuel historique.

Le Raspberry Pi 3 couvre les trois sans surcoût ni complexité : UART exposé sur le port GPIO, port Ethernet intégré, lecteur de carte microSD. Un Pi 4 ou un Pi 5 conviennent aussi bien — on n’a pas besoin de leur puissance supplémentaire pour lire 1200 bauds, mais ce sont les modèles qu’on trouve facilement dans le commerce aujourd’hui. Un Pi Zero 2 W marche également ; éviter les Pi Zero v1 (peu de RAM, USB unique).

Atout pratique côté logement : si l’armoire de brassage est proche du compteur, on raccorde tout en Ethernet plutôt qu’en Wi-Fi. C’est plus fiable, et la longueur de câble entre le compteur et le Pi reste courte.


Installation de Raspberry Pi OS

Le système retenu est Raspberry Pi OS (anciennement Raspbian), distribution dérivée de Debian recommandée par défaut sur la plateforme. Tout ce qui suit suppose une installation à jour (Bookworm ou Trixie selon le moment de lecture).

Le déploiement sur la carte microSD se fait avec Raspberry Pi Imager (rpi-imager), qui télécharge l’image officielle et l’écrit sur la carte. Avant de cliquer sur « Écrire », ouvrir les options avancées (icône en forme de roue dentée) et :

  • activer SSH dès la préparation de l’image, faute de quoi aucun accès distant ne sera possible au premier démarrage ;
  • définir un nom d’utilisateur et un mot de passe personnalisés — les valeurs par défaut pi / raspberry sont connues de tous les scans automatisés ;
  • pré-configurer le Wi-Fi si l’on ne branche pas un câble Ethernet, et la locale (fuseau horaire, clavier).

Insérer la carte dans le Pi, brancher l’Ethernet (recommandé pour le premier démarrage), brancher l’alimentation. Le Pi met une à deux minutes à démarrer la première fois (génération des clés SSH, redimensionnement de la partition).


Première connexion SSH

Une fois le Pi sous tension et raccordé au réseau, son adresse IP n’est pas connue à l’avance. Un balayage du réseau local avec nmap permet de l’identifier :

nmap -sn 192.168.1.0/24

La cible passée à nmap est l’adresse du réseau (192.168.1.0), pas celle de la passerelle (192.168.1.1). Le suffixe /24 est le masque CIDR : il indique que les 24 premiers bits désignent le réseau, et délimite donc la plage scannée (ici, de .1 à .254). Adapter à ton plan d’adressage si tu n’es pas en 192.168.1.x.

nmap liste les hôtes répondant au ping. On repère le Pi à son nom d’hôte (raspberrypi.local par défaut, ou celui défini dans Imager) ou à son adresse MAC commençant par B8:27:EB, DC:A6:32, E4:5F:01 selon le modèle.

Connexion avec l’utilisateur configuré dans Imager :

ssh mon-utilisateur@192.168.1.68

Une fois connecté, mettre le système à jour avant toute autre chose :

sudo apt update
sudo apt full-upgrade -y

Activer le port série

Le port série du Raspberry Pi est désactivé par défaut sur les versions récentes de Raspberry Pi OS, parce que le noyau l’utilise comme console de débogage. Il faut le libérer et l’activer pour notre usage.

Lancer l’outil de configuration :

sudo raspi-config

Naviguer dans : Interface OptionsSerial Port.

Deux questions sont posées :

Question Réponse
« Would you like a login shell to be accessible over serial? » Non
« Would you like the serial port hardware to be enabled? » Oui

La première option libère le port série de la console noyau, la seconde active physiquement l’UART sur les broches GPIO. Sortir de raspi-config et redémarrer :

sudo reboot

Après redémarrage, vérifier qu’on a bien un périphérique série exposé :

ls -l /dev/serial0 /dev/ttyAMA0

/dev/serial0 est un lien symbolique stable qui pointe vers le bon device quel que soit le modèle de Pi — c’est généralement ce nom qu’on utilisera dans les programmes.


Câblage du démodulateur

Le démodulateur ASK construit dans l’article précédent expose trois broches qu’on raccorde aux pins GPIO du Pi :

Broche démodulateur Broche Pi Numéro physique Signal
VCC 3V3 Pin 1 Alimentation du démodulateur
GND GND Pin 6 Masse commune
OUT RX (GPIO15) Pin 10 Sortie TTL démodulée vers l’UART
┌─────────────────────────┐
│     Compteur Linky      │
│   sortie TIC (ASK)      │
└───────────┬─────────────┘
            │  signal TIC modulé sur câble paire torsadée
            ▼
┌─────────────────────────┐
│    Démodulateur ASK     │
│   (opto + MOSFET)       │
│                         │
│   IN  ← TIC data        │
│   GND ← TIC GND         │
│                         │
│   VCC ─────────────────────►  Pin 1   (3V3)
│   GND ─────────────────────►  Pin 6   (GND)
│   OUT ─────────────────────►  Pin 10  (RX / GPIO15)
└─────────────────────────┘            Raspberry Pi 3

⚠️ Alimenter le démodulateur en 3,3 V, pas en 5 V. Les entrées GPIO du Raspberry Pi ne sont pas tolérantes au 5 V — un MOSFET alimenté en 5 V appliquerait un niveau haut de 5 V sur la broche RX, ce qui détruit l’entrée à terme. Les schémas Hallard récents prévoient cette précaution mais beaucoup d’anciens tutoriels parlent encore d’alimenter en 5 V.

Le Pi peut rester sous tension pendant le câblage côté démodulateur (l’isolation galvanique de l’optocoupleur évite tout retour vers le compteur), mais l’usage est de l’éteindre avant de manipuler les broches GPIO.


Vérification rapide du signal

À ce stade, on peut vérifier que des octets arrivent sur le port série avant de passer à l’installation de raspjson. Configurer le port aux paramètres TIC mode historique (1200 7E1) et lire en clair :

stty -F /dev/serial0 1200 cs7 parenb -parodd -cstopb -ixon -icrnl raw
cat /dev/serial0

On doit voir défiler des trames ASCII lisibles, encadrées par des caractères de contrôle, avec des étiquettes comme ADCO, OPTARIF, ISOUSC, IINST, PAPPCtrl+C pour arrêter.

Si rien ne sort, revoir :

  • côté Pi : raspi-config (hardware serial activé, login shell désactivé), câblage des pins ;
  • côté démodulateur : alimentation présente, bornes I1I2 côté compteur (et pas I1A) ;
  • côté compteur : mode historique activé (et pas mode standard, qui émettrait à 9600 bauds).

Si l’on voit des caractères mais qu’ils sont incohérents, c’est probablement que le compteur est en mode standard — il faudra adapter le débit ou demander à Enedis de repasser en historique.


Suite

Le Raspberry Pi est prêt : OS installé, accès SSH fonctionnel, port série activé, démodulateur câblé sur les GPIO. Reste à installer le programme qui va lire et décoder le flux TIC en trames JSON — c’est l’objet de l’article suivant sur l’installation de raspjson.

Partager : ✉ Mail X in 🐘
Commentaires

Aucun commentaire pour l'instant. Soyez le premier !

Laisser un commentaire
Un code de vérification sera envoyé à votre adresse email.