Résolu sur le forum : Borne Wallbox Pulsar Plus 7,4 kW sur abonnement 6 kVA : quel délestage avant accord copro (urgent)Ma panne diagnostiquée — réponse sous 48 h29 €

Télécommande IR avec Arduino : recevoir et émettre des signaux

Arduinomis à jour le 4 mars 2026

Contrôler une TV, un ruban LED ou un climatiseur avec une simple télécommande IR et un Arduino intrigue souvent les bricoleurs. Les signaux infrarouges semblent invisibles et complexes, pourtant la logique qui se cache derrière reste très structurée.

En maîtrisant la réception et l’émission de signaux IR, un Arduino devient une véritable passerelle universelle entre vos télécommandes existantes et vos projets électroniques. Le principe repose sur quelques composants bien choisis, des bibliothèques stables et une méthode rigoureuse de décodage.

Éléments clésSynthèse rapide
ObjectifUtiliser Arduino pour lire et générer des signaux infrarouges.
Matériel requisArduino, récepteur IR, LED IR, télécommande standard.
Réception IRDécodage des codes envoyés par une télécommande pour les exploiter dans un programme.
Émission IREnvoi de codes pour simuler une télécommande et contrôler des appareils.
Usage typiqueAutomatiser télévisions, climatiseurs ou tout appareil IR 📺❄️.

Télécommande IR et Arduino : principes, usages et limites

Une télécommande infrarouge (IR) envoie des données à courte distance à l’aide d’une LED qui émet une lumière dans l’infrarouge, invisible à l’œil nu. Un récepteur IR capte cette lumière modulée et la transforme en signal électrique décodable par un microcontrôleur comme l’Arduino.

Combiné à un capteur adapté, un Arduino devient capable de recevoir les codes d’une télécommande existante, puis de les mémoriser et de les réémettre. Ce principe ouvre la porte à un contrôle centralisé de plusieurs appareils : TV, ampli, barre de son, climatiseur compatible IR, LED RGB IR, etc.

Conseil pratique : avant de vous lancer sur un projet IR avancé, validez votre niveau sur des montages plus simples. Un guide comme /projet-arduino-debutant/ donne une base solide pour éviter les erreurs de câblage ou de code.

Comment fonctionne une télécommande infrarouge ? Bases techniques

La plupart des télécommandes IR utilisent une LED émettant autour de 940 nm. L’information ne transite pas en continu : elle repose sur une modulation en fréquence, généralement autour de 38 kHz, parfois 36 kHz ou 40 kHz selon les marques.

ArduinoArduino et domotique : automatiser sa maison pour pas cher

La LED IR clignote donc à haute fréquence. En jouant sur les séquences d’allumage et d’extinction, la télécommande code des bits, qui deviennent des trames structurées. Le récepteur IR filtre cette fréquence, supprime la lumière ambiante, puis fournit au microcontrôleur un signal numérique propre.

Protocoles IR les plus courants (NEC, Sony, RC5…)

Les signaux IR suivent des protocoles de communication. Chaque protocole définit :

  • La durée des impulsions et des espaces
  • La structure de la trame (adresse, commande, bit de validation, etc.)
  • Les mécanismes de répétition d’un code quand on maintient un bouton appuyé

Les plus répandus dans le monde Arduino :

  • NEC : très fréquent sur les télécommandes génériques et de kits Arduino, 32 bits, avec code adresse et code commande.
  • Sony SIRC : utilisé par de nombreux appareils Sony, avec plusieurs variantes (12, 15 ou 20 bits).
  • RC5 / RC6 (Philips) : format biphase, robuste face aux erreurs.
  • Protocoles propriétaires : climatiseurs, box, équipements audio spécifiques.
Protocole Fréquence typique Longueur de trame Usage courant
NEC 38 kHz 32 bits Télécommandes génériques, TV asiatiques
Sony SIRC 40 kHz 12–20 bits TV, lecteurs DVD Sony
RC5 36 kHz 14 bits Équipements audio/vidéo Philips
Propriétaire (AC) 38 kHz Très variable Climatiseurs, systèmes multi-fonctions
« Un même bouton de télécommande ne correspond pas à une simple valeur fixe universelle. La valeur dépend du protocole, de la marque et parfois même du modèle de l’appareil. »

Matériel nécessaire pour une télécommande IR avec Arduino

Une télécommande IR Arduino se construit avec peu de composants, à condition de choisir des références adaptées à la fréquence 38 kHz et à la tension d’alimentation de la carte.

Liste des composants pour recevoir des signaux IR

Pour la réception :

  • Une carte Arduino (Uno, Nano, Mega ou équivalent).
  • Un récepteur IR 38 kHz de type TSOP38238, VS1838B ou équivalent.
  • Quelques fils de connexion et une breadboard.
  • Optionnel : une LED classique pour visualiser une réception, une résistance de 220 Ω.

Le récepteur IR est un module trois broches :

  • GND : masse.
  • VCC : alimentation, généralement 5 V (vérification impérative dans la datasheet).
  • OUT : sortie numérique vers une entrée Arduino.

Liste des composants pour émettre des signaux IR

Pour l’émission :

  • Une LED IR 940 nm adaptée à un courant autour de 20 mA.
  • Une résistance de limitation (100 Ω à 220 Ω selon la tension et l’intensité visée).
  • Pour plus de portée : un transistor NPN (2N2222, BC337, etc.) et une résistance de base.
Attention : reliée directement à la sortie d’une broche Arduino, une LED IR reste limitée en portée. Pour piloter une TV ou un climatiseur à plusieurs mètres, un montage avec transistor et alimentation correcte évite de saturer la sortie du microcontrôleur.

Câblage type : connecter un récepteur IR à l’Arduino

Le câblage standard d’un capteur IR 38 kHz vers un Arduino Uno suit un schéma simple :

  • Broche GND du récepteur → GND de l’Arduino.
  • Broche VCC du récepteur → 5 V de l’Arduino (ou 3,3 V si le module l’exige).
  • Broche OUT du récepteur → entrée numérique, par exemple la broche 2.

La plupart des bibliothèques IR recommandent une broche supportant des interruptions matérielles (D2, D3 sur Uno) afin de mesurer correctement les timings des impulsions. Ce point influence directement la qualité du décodage.

Pour approfondir l’usage de capteurs dédiés, un tutoriel comme /arduino-capteur-ir/ apporte un éclairage complémentaire sur le comportement des récepteurs IR, leurs limites face à la lumière ambiante et leurs tensions de fonctionnement.

Câblage type : connecter une LED IR pour émettre

Pour émettre un signal IR basique, le câblage minimal se résume à :

  • Broche numérique Arduino (par exemple D3) → résistance (100–220 Ω) → anode de la LED IR.
  • Cathode de la LED IR → GND.

Pour augmenter la portée :

  • D3 → résistance de base (1 kΩ) → base du transistor NPN.
  • Émetteur du transistor → GND.
  • Collecteur du transistor → cathode de la LED IR.
  • Anode de la LED IR → +5 V via une résistance calculée pour le courant visé.

Bibliothèques Arduino pour IR : IRremote et alternatives

La gestion directe des timings IR en code brut reste fastidieuse. Les bibliothèques IR prennent en charge la modulation 38 kHz, le décodage des protocoles et la génération de trames de manière fiable.

Bibliothèque IRremote (Recommandée)

IRremote reste la référence pour Arduino. Elle propose :

  • La réception multi-protocoles (NEC, Sony, RC5, RC6, etc.).
  • L’émission de codes standards et d’impulsions « raw ».
  • Des exemples de codes prêts à l’emploi dans l’IDE Arduino.

Les fonctions typiques :

  • irrecv.decode() pour analyser un signal reçu.
  • IrSender.sendNEC(), sendSony(), etc. pour émettre des codes.
  • Affichage des données reçues en hexadécimal, en décimal ou en brut (tableaux de durées microsecondes).

Autres bibliothèques et forks

Certaines variantes d’IRremote apparaissent pour des cas particuliers :

  • Forks optimisés pour ESP8266/ESP32.
  • Bibliothèques centrées sur les climatiseurs, avec gestion de très longues trames.

Dans la plupart des montages avec un Arduino Uno ou Nano, IRremote couvre l’ensemble des besoins de réception et d’émission.

Recevoir un signal IR : méthode pas à pas

La première étape consiste à écouter les codes d’une télécommande existante. L’objectif : afficher les valeurs reçues dans le moniteur série, les noter puis les réutiliser pour le contrôle.

Étape 1 : configuration de la bibliothèque

Après installation de IRremote via le gestionnaire de bibliothèques :

  • Inclure le fichier d’en-tête #include <IRremote.h>.
  • Déclarer l’objet de réception avec la broche choisie.
  • Initialiser la communication série pour le débogage.

Une fois le setup configuré, l’Arduino attend les impulsions en arrière-plan. La bibliothèque gère en interne les interruptions et les mesures temporelles.

Étape 2 : décodage dans la boucle loop()

Dans la fonction loop(), un appel répété à decode() vérifie si un nouveau signal est disponible. En cas de réception :

  • Le protocole détecté est identifié (NEC, Sony, etc.).
  • La valeur décodée de la commande est fournie (généralement en hexadécimal).
  • Pour une analyse fine, un tableau des timings bruts reste accessible.

Un simple Serial.println() suffit alors pour afficher les données dans le moniteur série. Le relevé de plusieurs pressions du même bouton assure que la valeur reste stable.

« Un même bouton peut générer un code différent quand il est maintenu appuyé. La plupart des protocoles envoient une trame spéciale de répétition. Il convient de distinguer clairement trame initiale et trames de répétition. »

Bonnes pratiques lors de la réception IR

Une réception fiable repose sur quelques habitudes :

  • Éloigner le récepteur IR des sources de lumière directe (soleil, spots LED, néons).
  • Éviter les longues rallonges sur la broche de sortie du récepteur.
  • Vérifier la masse commune entre tous les éléments du montage.

Lorsque les lectures affichent des valeurs incohérentes, la lumière ambiante ou un mauvais câblage expliquent souvent le problème avant le code lui-même.

Émettre un signal IR avec Arduino

Une fois les codes d’une télécommande identifiés, l’Arduino peut les rejouer via une LED IR. Le but : reproduire le comportement de la télécommande, voire le compléter.

Émission de codes connus (protocoles gérés)

Pour les protocoles pris en charge par IRremote, l’émission reste directe :

  • Spécifier le protocole (NEC, Sony, etc.).
  • Envoyer la valeur relevée lors de la phase de réception.
  • Répéter l’envoi si nécessaire pour s’aligner sur le comportement d’origine.

Une séquence typique :

  • Lecture du bouton d’un clavier, d’un bouton poussoir ou d’une interface série.
  • Envoi du code IR associé.
  • Attente éventuelle entre deux envois pour éviter un bombardement de trames.

Émission de trames brutes (raw)

Pour des appareils exotiques ou des protocoles non gérés, une stratégie consiste à envoyer les timings bruts :

  • Relever les durées d’impulsions et de silence via la fonction de capture brute.
  • Stocker ces durées dans un tableau en microsecondes.
  • Utiliser les fonctions d’envoi « raw » de IRremote pour rejouer la séquence.

Cette approche ressemble à l’enregistrement d’un échantillon sonore que l’on diffuse ensuite. Le respect des timings reste la clé pour que l’appareil ciblé reconnaisse la commande.

Astuce : pour les climatiseurs, les trames IR incluent souvent l’intégralité de l’état (température, mode, ventilation). Une simple différence dans le tableau de timings change la configuration complète de l’AC. Un carnet de notes des scénarios permet de garder une vision claire des codes utilisés.

Créer une télécommande IR universelle avec Arduino

Un projet courant consiste à transformer un Arduino en télécommande universelle capable de piloter plusieurs appareils. Le principe :

  • Enregistrer les principaux codes IR de chaque appareil.
  • Associer chaque code à un bouton physique, un menu sur écran LCD ou une interface Bluetooth.
  • Émettre la séquence adaptée selon la sélection de l’utilisateur.

Avec un module Bluetooth HC-05 par exemple, une application mobile peut envoyer des ordres à l’Arduino, qui se charge d’émettre l’IR vers la TV ou l’ampli. Ce type de montage s’intègre facilement à un projet plus complet décrit dans /arduino-bluetooth-hc05/.

Architecture logicielle d’une télécommande universelle

Pour éviter un code confus, une organisation par couches reste efficace :

  • Une couche interface utilisateur (boutons, écran, Bluetooth, Wi-Fi).
  • Une couche logique : gestion des scénarios (allumer TV + ampli, changer de source, régler volume).
  • Une couche IR : fonctions d’envoi de trames, éventuellement de réception et d’apprentissage.

Les codes IR sont compris comme des données, pas comme du code dur. Un stockage dans la mémoire flash (PROGMEM) ou même sur une carte SD lorsqu’il y a beaucoup d’appareils simplifie la maintenance.

Exemples d’applications pratiques d’une télécommande IR Arduino

Les usages d’une télécommande IR Arduino couvrent une grande variété de situations, depuis le simple remplacement d’une télécommande perdue jusqu’à l’intégration dans un système domotique.

Contrôle multimédia dans un salon

Quelques cas typiques :

  • Centraliser l’allumage de la TV, de la box et de la barre de son dans une seule commande.
  • Créer un mode « film » qui ajuste les lumières (via relais ou LED RGB) et allume les appareils multimédias.
  • Compter les pressions d’un bouton pour réaliser des actions différentes (volume, source, mute).

Ici, l’Arduino se place à proximité des appareils, avec un ou plusieurs émetteurs IR orientés vers les récepteurs des équipements.

Pilotage de LED et bandeaux lumineux IR

De nombreux rubans LED RGB livrés avec une télécommande IR utilisent des protocoles simples. L’enregistrement de ces codes via Arduino permet de :

  • Intégrer le ruban LED dans un scénario domotique existant.
  • Remplacer la télécommande d’origine par une interface plus ergonomique.
  • Créer des ambiances synchronisées avec d’autres événements (capteur de mouvement, son, etc.).

Contrôle de climatiseurs et de ventilations IR

Les climatiseurs modernes disposent souvent d’un module IR. Les trames restent en général plus longues et plus détaillées que celles d’une TV. Une fois les séquences capturées, l’Arduino :

  • Gère un planning de températures selon l’heure.
  • Crée des modes éco ou confort différents de ceux fournis par le constructeur.
  • Relie la commande du climatiseur à d’autres capteurs (température, humidité, présence).

Gestion des interférences, portée et fiabilité

Les signaux IR restent sensibles à l’environnement. Pour obtenir un contrôle stable, quelques paramètres techniques méritent une attention soutenue.

Portée et angle de la LED IR

La portée dépend :

  • Du courant traversant la LED IR (dans les limites de la datasheet).
  • De la qualité du transistor utilisé pour l’amplification.
  • De l’orientation de la LED par rapport au récepteur.

Une LED IR classique présente un angle d’émission entre 20° et 60°. Pour couvrir un salon entier, certains projets ajoutent plusieurs LED IR orientées différemment, ou utilisent des réflecteurs simples.

Lumière ambiante et parasites

La lumière du soleil et certaines lampes LED ou fluorescentes produisent du bruit dans les bandes infrarouges. Les récepteurs IR filtrent une fréquence précise, mais un environnement très lumineux réduit la portée et la fiabilité.

Quelques stratégies utiles :

  • Orienter le récepteur à l’abri des sources lumineuses directes.
  • Ajouter un petit cache opaque autour du capteur pour le protéger.
  • Prévoir un seuil minimal de qualité de réception avant de valider une trame.

Comparatif : IR, Bluetooth et autres technologies de télécommande

Avant de bâtir un système complet, comparer les technologies de communication aide à choisir la plus adaptée. L’IR reste robuste pour des liaisons courtes et dirigées, mais d’autres solutions couvrent des besoins différents.

Technologie Ligne de vue Portée typique Complexité Usage typique
IR Oui Quelques mètres Faible à moyenne TV, lecteurs, rubans LED
Bluetooth (HC-05) Non 10 m environ Moyenne Contrôle via smartphone, échanges de données
Radio 433 MHz Non De dizaines à centaines de mètres Moyenne Domotique, capteurs sans fil
Wi-Fi Non Couverture réseau Plus élevée Intégration cloud, smartphone, automatisation avancée

L’infrarouge se révèle pertinent pour piloter des appareils existants conçus pour les télécommandes classiques. Couplé à du Bluetooth ou du Wi-Fi, il devient la couche finale qui traduit des ordres modernes en signaux reconnus par les équipements plus anciens.

Sécurité, fiabilité et aspects réglementaires

Les télécommandes IR utilisent des puissances lumineuses faibles et des longueurs d’onde non ionisantes. Dans des montages classiques respectant les caractéristiques des LED, le risque pour la santé reste marginal.

ArduinoPiloter un relais 230 V avec Arduino en sécurité : 5 erreurs à éviter

Sur le plan réglementaire, l’IR ne traverse pas les murs et n’utilise pas de fréquence radio libre, ce qui réduit les contraintes par rapport à des systèmes RF. En revanche, certaines marques introduisent des trames de validation ou d’authentification simples pour limiter l’activation par des signaux parasites.

« L’IR n’offre pas de véritable chiffrement. Un capteur correctement positionné enregistre sans difficulté les trames échangées. Lorsqu’un appareil contrôle un accès physique, le choix d’une technologie plus sécurisée reste préférable. »

Intégrer l’IR dans un projet Arduino plus large

Une télécommande IR devient particulièrement intéressante lorsqu’elle s’insère dans un écosystème plus vaste : capteurs, relais, actionneurs, communication sans fil. L’Arduino agit alors comme un pont entre le monde des signaux IR et d’autres protocoles.

Quelques idées d’intégration :

  • Système domotique maison : IR pour piloter TV et ampli, relais pour la lumière, capteurs pour la présence.
  • Station de contrôle murale avec écran TFT ou LCD, menus et scénarios configurables.
  • Interface smartphone via Bluetooth HC-05 ou Wi-Fi, qui délègue ensuite la commande IR à l’Arduino.

Les bases abordées dans un parcours pour débutants, comme /projet-arduino-debutant/, se transforment alors en briques d’un système plus élaboré, où l’IR représente simplement un canal de sortie supplémentaire.

Donnez votre avis

Soyez le 1er à noter cet article


Partagez cet article maintenant !


Ça ne règle pas votre cas ?

Décrivez la panne sur le forum, avec une photo si vous pouvez : les membres qui ont eu la même répondent, et le sujet reste pour les suivants.

Avatar photoAvatar photoAvatar photoAvatar photoAvatar photoRejoindre les 54 membres — gratuit, 44 pannes résolues

Dans le même tiroir

Montage Arduino avec écran LCD sans module I2C dans un atelier réaliste avec outils électroniques autour
Arduino

Arduino afficheur LCD sans I2C

Un afficheur LCD câblé directement sur Arduino ouvre des possibilités intéressantes pour qui aime garder la main sur chaque fil,…

Portrait de Inès DameronInès Dameron · 20 Fév 2026
La lettre du club

Une lettre par mois, accrochée au panneau

Les sujets du forum résolus dans le mois, un guide, un chiffre qu’on peut vérifier chez soi. Rien d’autre, jamais plus souvent — et on se désabonne d’un clic.

Ce qu’il y a dedans

Votre adresse

Une lettre par mois. Désabonnement en un clic.