Table des matières:

Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1] : 7 étapes
Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1] : 7 étapes

Vidéo: Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1] : 7 étapes

Vidéo: Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1] : 7 étapes
Vidéo: Raspberry Pi Infra Red Programmable TV Remote Control Using Python 2024, Juin
Anonim
Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1]
Télécommande infrarouge à configuration facile utilisant LIRC pour le Raspberry PI (RPi) - Juillet 2019 [Partie 1]

Après de nombreuses recherches, j'ai été surpris et consterné par les informations contradictoires sur la configuration de la télécommande IR pour mon projet RPi. Je pensais que ce serait facile, mais la configuration de Linux InfraRed Control (LIRC) a été problématique pendant longtemps mais a beaucoup changé en juin 2019 avec la sortie de la version Buster de Raspbian rendant une grande partie des didacticiels sans valeur. De nombreux tutoriels vous demandent de créer un fichier hardware.conf mais LIRC n'en a pas besoin ni ne veut et le module lirc-rpi a été remplacé par le module gpio-ir.

Le tutoriel suppose que le RPi exécute raspbian (version Buster juin 2019). Une connaissance pratique du terminal, des commandes de base de l'invite de commande et de l'édition de fichiers texte est également supposée.

REMARQUE: la configuration de LIRC échouera si elle est exécutée en tant qu'utilisateur racine et entraînera l'erreur redoutée « Impossible d'importer le nom RawConnection » lors de l'exécution du code python. Ce tutoriel suppose que vous êtes connecté en tant qu'utilisateur (c'est-à-dire: PI)

Objectif: Activer le contrôle à distance IR des projets RPi

1) Configurer LIRC sur RPi [Partie 1]

2) Démontrer LIRC en utilisant python [Partie 2]

Fournitures

--- Raspberry Pi (3, 4, zéro)

--- Fil Dupont (femelle-femelle)

--- Récepteur IR VS 1838b

Étape 1: Assembler le matériel

Assembler le matériel
Assembler le matériel
Assembler le matériel
Assembler le matériel
Assembler le matériel
Assembler le matériel

L'utilisation du récepteur IR VS1838b ne pourrait pas être plus simple. Il suffit de brancher le capteur au RPi directement avec le fil Dupont (Femelle-Femelle). Vous pouvez également utiliser une maquette (non illustrée) ou une soudure sur un protoboard (photo)

En regardant le récepteur IR VS1838b de face (avec le grand X face à vous)

---- La jambe gauche est sortie

---- La jambe centrale est rectifiée

---- La jambe droite est 3.3v

1) Fixez la jambe gauche à la broche 17 du BCM sur le RPi (fil jaune)

2) Fixez le pied central à la terre (fil noir)

3) Attachez la jambe droite à 3.3v (fil rouge)

Étape 2: Installer Lirc

Installer Lirc
Installer Lirc

1) Ouvrez la fenêtre du terminal et installez LIRC. Soyez prévenu que cela générera probablement une erreur "Impossible de démarrer la prise en charge de l'application d'entrée/sortie à distance Flexible IR" car les fichiers installés ont maintenant.dist ajouté et le suffixe doit être supprimé comme indiqué ci-dessous. Pas dur mais frustrant.

$ sudo apt-get update

$ sudo apt-get install lirc

----NE T'INQUIÈTE PAS! car cela générera probablement une erreur "Impossible de démarrer la prise en charge de l'application d'entrée/sortie à distance Flexible IR" car le suffixe.dist doit être supprimé de lirc_options.conf. Renommez simplement le fichier comme indiqué.

$ sudo mv /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf

2) Réinstallez lirc maintenant que le fichier lirc_options.conf a été renommé

$ sudo apt-get install lirc

Étape 3: Modifier Lirc_options.conf

Modifier Lirc_options.conf
Modifier Lirc_options.conf

Modifiez /etc/lirc/lirc_options.conf comme suit en modifiant ces deux lignes:

:

:

pilote = par défaut

périphérique = /dev/lirc0

:

:

Étape 4: Effectuez le déplacement pour supprimer le suffixe.dist de Lircd.conf.dist

Effectuez le déplacement pour supprimer le suffixe.dist de Lircd.conf.dist
Effectuez le déplacement pour supprimer le suffixe.dist de Lircd.conf.dist

Supprimer le suffixe.dist de /etc/lirc/lircd.conf.dist

$ sudo mv /etc/lirc/lircd.conf.dist /etc/lirc/lircd.conf

Étape 5: Modifier le fichier Config.txt

Modifier le fichier Config.txt
Modifier le fichier Config.txt

Modifiez /boot/config.txt en ajoutant une ligne dans la section module lirc-rpi comme suit. Cet exemple suppose que le RPi « écoute » la broche 17 du BCM pour le récepteur IR, mais n'importe quelle broche E/S du RPi peut être utilisée. Je ne l'ai pas encore essayé mais si vous souhaitez envoyer des commandes depuis le RPi, ajoutez et décommentez la 4ème ligne ci-dessous pour envoyer des commandes IR sur la broche 18 du BCM

:

:

:

# Décommentez ceci pour activer le module lirc-rpi

#dtoverlay=lirc-rpi

dtoverlay=gpio-ir, gpio_pin=17

#dtoverlay=gpio-ir-tx, gpio_pin=18

:

:

:

Étape 6: Vérifier l'état et redémarrer

Vérifier l'état et redémarrer
Vérifier l'état et redémarrer

1) Arrêtez, démarrez et vérifiez l'état de lircd pour vous assurer qu'il n'y a pas d'erreurs !

$ sudo systemctl arrêter lircd.service

$ sudo systemctl démarrer lircd.service

$ sudo systemctl status lircd.service

2) Redémarrez

$ sudo redémarrer

Étape 7: Testez la télécommande

Tester la télécommande
Tester la télécommande

Cette étape suppose que vous avez un récepteur IR connecté à votre RPi sur la broche spécifiée dans config.txt.

1) arrêter le service LIRCD et tester à distance à l'aide de la commande mode2

$ sudo systemctl arrêter lircd.service

$ sudo mode2 -d /dev/lirc0

3) Pointez la télécommande vers le récepteur et appuyez sur quelques boutons. Vous devriez voir quelque chose comme ça:

:

:

espacer

impulsion

:

:

4) Appuyez sur Ctrl-C pour quitter

5) Votre récepteur infrarouge est configuré et prêt à passer à la partie 2 et accessible en python.

Conseillé: