Une télécommande infrarouge et son récepteur réunis dans le même sachet : le boîtier à 17 touches, le module qui écoute, la LED infrarouge qui émet et trois fils pour tout relier. C’est la liaison sans fil la plus rapide à mettre en place sur une carte Arduino — rien à souder, rien à commander séparément.
La télécommande émet un code à chaque appui. Le module le reçoit, le filtre et le rend en clair sur une broche numérique : votre programme lit un numéro de touche, comme s’il lisait un bouton poussoir, mais à distance et sans contact. La LED infrarouge fournie permet l’inverse : faire parler votre montage à un appareil, avec ses propres codes.
Ce que contient le lot
| La télécommande | 17 touches : pavé numérique de 1 à 9, 0, * et #, quatre flèches directionnelles et une touche OK. Boîtier plat, pile en place, protégée par une languette isolante qui dépasse du boîtier. |
|---|---|
| Le module récepteur | Petite carte à trois broches mâles, avec un boîtier métallique à lentille : le récepteur à démodulateur 38 kHz, le même circuit que l’on trouve sur tous les modules de cette famille. |
| La LED infrarouge | Composant transparent à deux pattes, livré nu : c’est l’émetteur, à câbler soi-même. |
| Les fils | Trois fils de prototypage femelle-femelle, exactement ce qu’il faut pour relier le module à la carte sans plaque d’essai. |
La languette isolante n’est pas un déchet : elle empêche la pile de se vider pendant le transport. Retirez-la avant le premier essai — c’est la première chose à vérifier si la télécommande semble muette.
Caractéristiques techniques
| Contenu | Une télécommande 17 touches, un module récepteur infrarouge à trois broches, une LED infrarouge émettrice, trois fils de prototypage |
|---|---|
| Circuit récepteur | Famille 1838 (sérigraphié 1838, TL1838, VS1838B ou HX1838 selon les lots : c’est le même circuit) |
| Porteuse reçue | 38 kHz — la fréquence de la quasi-totalité des télécommandes du marché |
| Longueur d’onde | 940 nm, invisible à l’œil |
| Alimentation du module | 2,7 à 5,5 V continu (5 V sur une carte Uno) |
| Sortie du module | Numérique, au repos au niveau haut, tirée au niveau bas pendant chaque salve reçue |
| Portée | Plusieurs mètres en visée directe, dans un cône d’environ 45° de part et d’autre de l’axe. Elle se réduit avec l’éclairage ambiant et les obstacles. |
| Tolérance à la lumière | Environ 500 lux : le plein soleil sature le récepteur, une lampe proche le brouille |
| Connecteur | Barrette mâle de 3 broches au pas de 2,54 mm, brochable directement sur une plaque d’essai |
| Code émis par la télécommande | Protocole NEC le plus souvent. Le programme de cette page affiche le protocole réellement décodé, vous n’avez rien à supposer. |
Brochage : trois broches, et une sérigraphie à lire
Le module porte trois broches, dont l’ordre n’est pas normalisé d’un lot à l’autre. C’est la sérigraphie de la carte qui fait foi, pas la position de gauche à droite :
S | Signal — la sortie démodulée, à relier à une entrée numérique de la carte |
|---|---|
| Broche du milieu | Alimentation, de 2,7 à 5,5 V. C’est toujours celle-là. |
− | Masse, à relier au GND de la carte |
Si un montage correctement alimenté ne renvoie rien, ce sont les deux broches extérieures qu’il faut échanger avant de chercher ailleurs. La broche du milieu, elle, reste l’alimentation.
Un point auquel il faut s’habituer : la sortie est au niveau haut quand rien n’arrive, et descend au niveau bas pendant les salves. C’est l’inverse d’un bouton poussoir ordinaire, et c’est exactement ce que la bibliothèque IRremote attend.
Mini-projet : lire les codes de la télécommande et allumer une LED
Objectif : brancher le module, appuyer sur une touche, lire le code dans le moniteur série, puis s’en servir pour allumer une LED. Comptez un quart d’heure.
Ce qu’il faut
| La liaison | La télécommande et son module récepteur — ceux de cette page |
|---|---|
| La carte | Uno R3 + câble USB |
| Le voyant | LED 5mm Rouge |
| Sa protection | Résistance 1/4w 220 ohm |
| Des fils en réserve | 10 câbles Dupont — les trois fils du lot suffisent pour le module, mais un montage qui s’étoffe en réclame vite davantage |
Le câblage
Module S | → Arduino D2 |
|---|---|
| Module milieu | → Arduino 5V |
Module − | → Arduino GND |
| LED, patte longue | → Arduino D8, en passant par la résistance de 220 Ω |
| LED, patte courte | → Arduino GND |
Aucune plaque d’essai n’est nécessaire pour ce montage : une extrémité des fils femelle-femelle se clipse sur les broches du module, l’autre sur les broches de la carte. La résistance de 220 Ω en série avec la LED n’est pas facultative, elle limite le courant qui la traverse.
Le programme
Installez d’abord la bibliothèque IRremote (version 4) depuis le gestionnaire de bibliothèques de l’IDE Arduino, puis copiez ce programme et téléversez-le :
/*
* Decodeur de telecommande infrarouge - kit 17 touches
* Carte : Arduino Uno R3
* Montage : broche S du module recepteur sur D2, LED rouge sur D8
* Bibliotheque : IRremote (version 4), a installer depuis le gestionnaire
* de bibliotheques de l'IDE Arduino
*
* Composants, brochage et fiche complete : www.marocproduits.com
*/
#include "IRremote.hpp"
const byte PIN_IR = 2; // broche S du module recepteur
const byte PIN_LED = 8; // LED rouge, en serie avec 220 ohms
bool ledAllumee = false;
void setup() {
Serial.begin(9600);
pinMode(PIN_LED, OUTPUT);
// Le signal arrive deja demodule : rien d'autre a configurer
IrReceiver.begin(PIN_IR, ENABLE_LED_FEEDBACK);
Serial.println("Visez le module avec la telecommande, puis appuyez.");
}
void loop() {
if (IrReceiver.decode()) {
byte touche = IrReceiver.decodedIRData.command;
// Protocole, adresse et numero de la touche, en une ligne
IrReceiver.printIRResultShort(&Serial);
// On se remet en ecoute de la touche suivante
IrReceiver.resume();
// SEUL REGLAGE A FAIRE : remplacez 0x45 par le code que vous venez
// de lire pour la touche de votre choix, puis televersez de nouveau.
if (touche == 0x45) {
ledAllumee = !ledAllumee;
digitalWrite(PIN_LED, ledAllumee);
}
}
}Comment ça marche
IrReceiver.begin(PIN_IR, ENABLE_LED_FEEDBACK)met le module en écoute sur la broche D2. La bibliothèque s’occupe du reste : elle mesure la durée de chaque impulsion et reconnaît le protocole toute seule.IrReceiver.decode()renvoietruequand une trame complète vient d’arriver. Le programme n’est donc pas en attente bloquante : il continue de tourner et n’agit que sur événement.printIRResultShortaffiche en une ligne le protocole, l’adresse et le numéro de la touche. Une télécommande de télévision donnera un autre protocole et d’autres numéros : c’est une information, pas une erreur.IrReceiver.resume()réarme la réception pour la touche suivante. Oubliez cette ligne et seule la première touche sera lue.- La comparaison
touche == 0x45est le seul endroit à adapter : le code d’une touche change d’une télécommande à l’autre, et c’est justement ce que la manip du dessus vous a permis de relever. - Le programme mémorise l’état de la LED dans
ledAllumeeet l’inverse à chaque appui — un interrupteur à distance, sans le moindre fil entre la télécommande et la carte.
Si vous maintenez une touche appuyée, la télécommande renvoie une trame de répétition. Le drapeau IRDATA_FLAGS_IS_REPEAT la signale, et la commande reste la même : c’est ce qu’il faut pour faire défiler un menu, plutôt que de basculer un état à chaque répétition.
Pour aller plus loin
- Commander une lampe — un Module 1 relais 5v interposé entre l’Arduino et le luminaire transforme la touche en interrupteur mural. Coupez le disjoncteur avant de câbler le circuit de puissance, et enfermez le relais dans un boîtier isolant.
- Relever les codes d’une télécommande existante — remplacez la télécommande du kit par celle d’un appareil que vous voulez piloter : le module lit n’importe quelle télécommande à 38 kHz, et le moniteur série vous donne ses numéros de touches.
- Un clavier sans contact — les 17 touches se comportent comme 17 boutons : de quoi saisir un code d’accès, ou lancer une action précise sans écran ni bouton sur le boîtier.
L’autre moitié du kit : la LED infrarouge émettrice
La LED fournie est le composant symétrique du récepteur : elle émet à 940 nm, exactement ce que le module écoute. Elle sert à faire parler votre Arduino à un appareil — allumer un téléviseur, régler un climatiseur, ou reproduire une télécommande perdue, à condition d’avoir relevé ses codes au préalable.
Une LED infrarouge ne s’allume pas comme une LED ordinaire : le signal est un train d’impulsions à 38 kHz, dont les durées portent l’information. La bibliothèque IRremote sait générer ce signal, et ses exemples d’émission indiquent la broche à utiliser sur votre carte. Le montage, lui, détermine la portée :
- Branchée directement sur une broche, avec une résistance de protection en série, la LED émet sur quelques centimètres — de quoi commander un appareil posé juste devant.
- Avec un transistor 2N2222 NPN monté en interrupteur et la LED alimentée en 5 V, le courant de pointe devient suffisant pour porter à plusieurs mètres, comme une vraie télécommande.
Pour savoir si la LED travaille, visez-la avec l’objectif d’un téléphone : l’œil ne voit rien, mais la caméra la montre en violet pâle ou en blanc violacé à chaque impulsion. C’est le contrôle le plus simple, et il vaut aussi pour la télécommande du kit. Attention à sa polarité : la patte longue est l’anode, côté positif, comme sur toute LED.
Variante : quand l’infrarouge ne convient pas
L’infrarouge a une qualité et un défaut : il ne traverse ni un mur, ni une main, ni une vitre teintée. C’est une sécurité quand on veut qu’une commande ne porte qu’à l’intérieur d’une pièce, une contrainte quand l’appareil est de l’autre côté d’une cloison. Dans ce cas, passez à la radio, qui traverse les murs : un émetteur et récepteur radio fréquence remplace la paire infrarouge sans changer la façon de programmer.
Questions fréquentes
Le moniteur série reste vide quand j’appuie sur une touche
Dans l’ordre : vérifiez que l’alimentation est bien sur la broche du milieu du module, échangez les deux broches extérieures si rien ne change, puis contrôlez la télécommande elle-même — sa LED doit apparaître en violet pâle devant l’objectif d’un téléphone. Terminez par l’environnement : éloignez le montage du plein soleil et des lampes puissantes, qui saturent le récepteur.
La télécommande ne fait rien du tout
La languette isolante est la première responsable : elle doit être retirée du boîtier. Une télécommande qui porte à un mètre au lieu de dix mètres signale une pile fatiguée plutôt qu’un défaut du module.
Faut-il une résistance avec le module récepteur ?
Non. Le module est complet : la résistance de protection des montages à LED ne concerne que la LED infrarouge émettrice et le voyant du mini-projet. Le récepteur, lui, se branche directement.
Puis-je l’alimenter en 3,3 V ?
Oui, le circuit accepte de 2,7 à 5,5 V. Alimenté en 3,3 V, il délivre une sortie dans la même plage, directement lisible par une carte 3,3 V comme l’ESP32 ou la Raspberry Pi.
La télécommande peut-elle commander mon téléviseur ?
Non, elle n’est pas universelle : ses codes sont propres au boîtier. Elle est faite pour être lue par votre montage, ce qui est bien plus utile — vous savez exactement ce que chaque touche envoie. Pour un appareil du commerce, il faut au contraire lire ses codes avec le module, puis les reproduire.
À combiner avec
Les trois fils du lot relient le module, mais pas plus loin : dès que le montage comporte un relais, un afficheur ou un moteur, il faut une plaque d’essai 400 points pour répartir les liaisons. Une deuxième réception est utile si votre appareil doit être commandé depuis deux pièces : un capteur infrarouge KY022 est le même récepteur, avec sa LED témoin et sa résistance, à placer de l’autre côté.











