Émetteur et récepteur IR
Je vais vous expliquer comment utiliser les deux éléments suivants avec votre Raspberry PI sous Jessie:
Sources:
Anderson69s.com
Carlarotwang.wordpress.com
Lirc.org
Tout d’abord il faut installer Jessie sur votre Raspberry et le mettre à jour, consulter l’article suivant.
Nous allons utiliser LIRC.
Installation de LIRC:
sudo apt-get install lirc
Configuration des modules:
sudo nano /etc/modules
Configuration du Hardware:
sudo nano /etc/lirc/hardware.conf
Configuration :
sudo nano /boot/config.txt
Reboot du Raspberry
Tester la réception :
sudo /etc/init.d/lirc stop mode2 -d /dev/lirc0
Puis appuyer sur un touche de votre télécommande devant le récepteur IR, vous devriez avoir un résultat similaire.
space 1092 pulse 403 space 1062 pulse 433 space 2086 pulse 408 space 2063 pulse 429 space 1062 pulse 433 space 1062 pulse 433 space 1063 pulse 433
Pour la configuration des toucher il faut utiliser les paramétrés suivants:
irrecord --list-namespace
BTN_TRIGGER BTN_WHEEL BTN_X BTN_Y BTN_Z
Liste:
KEY_0 KEY_102ND KEY_1 KEY_2 KEY_3 KEY_4 KEY_5 KEY_6 KEY_7 KEY_8 KEY_9 KEY_A KEY_AB KEY_ADDRESSBOOK KEY_AGAIN KEY_ALTERASE KEY_ANGLE KEY_APOSTROPHE KEY_ARCHIVE KEY_AUDIO KEY_AUX KEY_B KEY_BACK KEY_BACKSLASH KEY_BACKSPACE KEY_BASSBOOST KEY_BATTERY KEY_BLUE KEY_BLUETOOTH KEY_BOOKMARKS KEY_BREAK KEY_BRIGHTNESS_CYCLE KEY_BRIGHTNESSDOWN KEY_BRIGHTNESSUP KEY_BRIGHTNESS_ZERO KEY_BRL_DOT10 KEY_BRL_DOT1 KEY_BRL_DOT2 KEY_BRL_DOT3 KEY_BRL_DOT4 KEY_BRL_DOT5 KEY_BRL_DOT6 KEY_BRL_DOT7 KEY_BRL_DOT8 KEY_BRL_DOT9 KEY_C KEY_CALC KEY_CALENDAR KEY_CAMERA KEY_CANCEL KEY_CAPSLOCK KEY_CD KEY_CHANNEL KEY_CHANNELDOWN KEY_CHANNELUP KEY_CHAT KEY_CLEAR KEY_CLOSE KEY_CLOSECD KEY_COFFEE KEY_COMMA KEY_COMPOSE KEY_COMPUTER KEY_CONFIG KEY_CONNECT KEY_CONTEXT_MENU KEY_COPY KEY_CUT KEY_CYCLEWINDOWS KEY_D KEY_DASHBOARD KEY_DATABASE KEY_DEL_EOL KEY_DEL_EOS KEY_DELETE KEY_DELETEFILE KEY_DEL_LINE KEY_DIGITS KEY_DIRECTION KEY_DIRECTORY KEY_DISPLAY_OFF KEY_DISPLAYTOGGLE KEY_DOCUMENTS KEY_DOLLAR KEY_DOT KEY_DOWN KEY_DVD KEY_E KEY_EDIT KEY_EDITOR KEY_EJECTCD KEY_EJECTCLOSECD KEY_EMAIL KEY_END KEY_ENTER KEY_EPG KEY_EQUAL KEY_ESC KEY_EURO KEY_EXIT KEY_F10 KEY_F11 KEY_F12 KEY_F13 KEY_F14 KEY_F15 KEY_F1 KEY_F16 KEY_F17 KEY_F18 KEY_F19 KEY_F20 KEY_F21 KEY_F22 KEY_F23 KEY_F24 KEY_F2 KEY_F KEY_F3 KEY_F4 KEY_F5 KEY_F6 KEY_F7 KEY_F8 KEY_F9 KEY_FASTFORWARD KEY_FAVORITES KEY_FILE KEY_FINANCE KEY_FIND KEY_FIRST KEY_FN KEY_FN_1 KEY_FN_2 KEY_FN_B KEY_FN_D KEY_FN_E KEY_FN_ESC KEY_FN_F KEY_FN_F10 KEY_FN_F1 KEY_FN_F11 KEY_FN_F12 KEY_FN_F2 KEY_FN_F3 KEY_FN_F4 KEY_FN_F5 KEY_FN_F6 KEY_FN_F7 KEY_FN_F8 KEY_FN_F9 KEY_FN_S KEY_FORWARD KEY_FORWARDMAIL KEY_FRAMEBACK KEY_FRAMEFORWARD KEY_FRONT KEY_G KEY_GAMES KEY_GOTO KEY_GRAPHICSEDITOR KEY_GRAVE KEY_GREEN KEY_H KEY_HANGEUL KEY_HANJA KEY_HELP KEY_HENKAN KEY_HIRAGANA KEY_HOME KEY_HOMEPAGE KEY_HP KEY_I KEY_INFO KEY_INSERT KEY_INS_LINE KEY_ISO KEY_J KEY_K KEY_KATAKANA KEY_KATAKANAHIRAGANA KEY_KBDILLUMDOWN KEY_KBDILLUMTOGGLE KEY_KBDILLUMUP KEY_KEYBOARD KEY_KP0 KEY_KP1 KEY_KP2 KEY_KP3 KEY_KP4 KEY_KP5 KEY_KP6 KEY_KP7 KEY_KP8 KEY_KP9 KEY_KPASTERISK KEY_KPCOMMA KEY_KPDOT KEY_KPENTER KEY_KPEQUAL KEY_KPJPCOMMA KEY_KPLEFTPAREN KEY_KPMINUS KEY_KPPLUS KEY_KPPLUSMINUS KEY_KPRIGHTPAREN KEY_KPSLASH KEY_L KEY_LANGUAGE KEY_LAST KEY_LEFT KEY_LEFTALT KEY_LEFTBRACE KEY_LEFTCTRL KEY_LEFTMETA KEY_LEFTSHIFT KEY_LINEFEED KEY_LIST KEY_LOGOFF KEY_M KEY_MACRO KEY_MAIL KEY_MAX KEY_MEDIA KEY_MEDIA_REPEAT KEY_MEMO KEY_MENU KEY_MESSENGER KEY_MHP KEY_MINUS KEY_MODE KEY_MOVE KEY_MP3 KEY_MSDOS KEY_MUHENKAN KEY_MUTE KEY_N KEY_NEW KEY_NEWS KEY_NEXT KEY_NEXTSONG KEY_NUMERIC_0 KEY_NUMERIC_1 KEY_NUMERIC_2 KEY_NUMERIC_3 KEY_NUMERIC_4 KEY_NUMERIC_5 KEY_NUMERIC_6 KEY_NUMERIC_7 KEY_NUMERIC_8 KEY_NUMERIC_9 KEY_NUMERIC_POUND KEY_NUMERIC_STAR KEY_NUMLOCK KEY_O KEY_OK KEY_OPEN KEY_OPTION KEY_P KEY_PAGEDOWN KEY_PAGEUP KEY_PASTE KEY_PAUSE KEY_PAUSECD KEY_PC KEY_PHONE KEY_PLAY KEY_PLAYCD KEY_PLAYER KEY_PLAYPAUSE KEY_POWER KEY_POWER2 KEY_PRESENTATION KEY_PREVIOUS KEY_PREVIOUSSONG KEY_PRINT KEY_PROG1 KEY_PROG2 KEY_PROG3 KEY_PROG4 KEY_PROGRAM KEY_PROPS KEY_PVR KEY_Q KEY_QUESTION KEY_R KEY_RADIO KEY_RECORD KEY_RED KEY_REDO KEY_REFRESH KEY_REPLY KEY_RESERVED KEY_RESTART KEY_REWIND KEY_RFKILL KEY_RIGHT KEY_RIGHTALT KEY_RIGHTBRACE KEY_RIGHTCTRL KEY_RIGHTMETA KEY_RIGHTSHIFT KEY_RO KEY_S KEY_SAT KEY_SAT2 KEY_SAVE KEY_SCALE KEY_SCREEN KEY_SCROLLDOWN KEY_SCROLLLOCK KEY_SCROLLUP KEY_SEARCH KEY_SELECT KEY_SEMICOLON KEY_SEND KEY_SENDFILE KEY_SETUP KEY_SHOP KEY_SHUFFLE KEY_SLASH KEY_SLEEP KEY_SLOW KEY_SOUND KEY_SPACE KEY_SPELLCHECK KEY_SPORT KEY_SPREADSHEET KEY_STOP KEY_STOPCD KEY_SUBTITLE KEY_SUSPEND KEY_SWITCHVIDEOMODE KEY_SYSRQ KEY_T KEY_TAB KEY_TAPE KEY_TEEN KEY_TEXT KEY_TIME KEY_TITLE KEY_TUNER KEY_TV KEY_TV2 KEY_TWEN KEY_U KEY_UNDO KEY_UNKNOWN KEY_UP KEY_UWB KEY_V KEY_VCR KEY_VCR2 KEY_VENDOR KEY_VIDEO KEY_VIDEO_NEXT KEY_VIDEOPHONE KEY_VIDEO_PREV KEY_VOICEMAIL KEY_VOLUMEDOWN KEY_VOLUMEUP KEY_W KEY_WAKEUP KEY_WIMAX KEY_WLAN KEY_WORDPROCESSOR KEY_WWW KEY_X KEY_XFER KEY_Y KEY_YELLOW KEY_YEN KEY_Z KEY_ZENKAKUHANKAKU KEY_ZOOM KEY_ZOOMIN KEY_ZOOMOUT KEY_ZOOMRESET BTN_0 BTN_1 BTN_2 BTN_3 BTN_4 BTN_5 BTN_6 BTN_7 BTN_8 BTN_9 BTN_A BTN_B BTN_BACK BTN_BASE BTN_BASE2 BTN_BASE3 BTN_BASE4 BTN_BASE5 BTN_BASE6 BTN_C BTN_DEAD BTN_DIGI BTN_EXTRA BTN_FORWARD BTN_GAMEPAD BTN_GEAR_DOWN BTN_GEAR_UP BTN_JOYSTICK BTN_LEFT BTN_MIDDLE BTN_MISC BTN_MODE BTN_MOUSE BTN_PINKIE BTN_RIGHT BTN_SELECT BTN_SIDE BTN_START BTN_STYLUS BTN_STYLUS2 BTN_TASK BTN_THUMB BTN_THUMB2 BTN_THUMBL BTN_THUMBR BTN_TL BTN_TL2 BTN_TOOL_AIRBRUSH BTN_TOOL_BRUSH BTN_TOOL_DOUBLETAP BTN_TOOL_FINGER BTN_TOOL_LENS BTN_TOOL_MOUSE BTN_TOOL_PEN BTN_TOOL_PENCIL BTN_TOOL_QUADTAP BTN_TOOL_RUBBER BTN_TOOL_TRIPLETAP BTN_TOP BTN_TOP2 BTN_TOUCH BTN_TR BTN_TR2 BTN_TRIGGER BTN_WHEEL BTN_X BTN_Y BTN_Z
C’est la liste de nom de boutons assignables, donc gardez la et choisissez les bien.
Pour lancer l’enregistrement de votre télécommande il faut utiliser la commande:
irrecord -d /dev/lirc0 ~/out.conf
Une fois lancé vous obtiendrez ceci:
Tapez « ENTREE » pour obtenir ceci:
Puis taper « ENTREE » et appuyer avec insistance sur des touches au hasard sur votre télécommande (pas plus d’une seconde).
La il devrait vous retourner un résultat similaire, vous pouvez maintenant saisir le nom du premier bouton que vous voulez assigner (dans mon cas le bouton power).
Puis appuyer sur la touche correspondante sur la télécommande, ce qui a pour effet d’assigner la commande KEY_POWER à la touche pressé. Répétez la manipulation jusqu’à avoir enregistrer les différentes touches souhaitées.
Pour arrêter l’enregistrement il suffit de taper entrer sans indiquer de nom. Il devrait vous demandez d’appuyer plusieurs fois et rapidement sur la même touche (n’importe la quelle) sans vous arrêter, il sortira du mode enregistrement seul.
Votre fichier est ici /home/pi/out.config il faut le personnaliser en donnant un nom à la télécommande :
sudo nano /home/pi/out.config
A la ligne:
name /home/pi/out.config
Remplacez par le nom de la télécommande par exemple:
name TV
Enregistrer le fichier et déplacez le:
sudo cp /home/pi/out.conf /etc/lirc/lircd.conf
Lors ce que vous ajoutez ou modifiez un fichier de télécommande il faut redémarrer le service lirc :
sudo service lirc restart
Pour verifier que le fichier est bien lu et qu’il est corerctement renseignez utilisez la commande :
irw
Puis appuyer sur une des touches assignées et vous obtiendrez un resultat similaire
0000000000f2f0d0 00 KEY_VOLUMEUP TV 0000000000f2f0d0 01 KEY_VOLUMEUP TV 0000000000f2f0d0 02 KEY_VOLUMEUP TV 0000000000f2f0d0 00 KEY_VOLUMEUP TV 0000000000f2f0d0 01 KEY_VOLUMEUP TV
Faites CTRL+C pour sortir.
Maintenant pour utiliser l’émetteur IR il faut exécuter un commande pour actionner un bouton, exemple:
irsend SEND_ONCE TV KEY_POWER
En général la LED IR ne s’allume pas suffisamment longtemps pour que votre TV reçoive le signal.
il faut alors utiliser les commandes suivantes :
irsend END_START TV KEY_POWER
Puis une petite second après
irsend END_STOP TV KEY_POWER
Le signal sera aussi long que le temps que vous aurez laissé la commande sur END_START.
Donc END_START on allume la LED IR et END_STOP on l’éteint.
Petite astuce pour voir si la LED fonctionne bien, utilisez une camera, celle de votre téléphone par exemple, et filmé face a la LED IR et lancer une commande, normalement vous devriez voir la LED s’allumer car la camera voie les infrarouges.
Noubliez pas de sauvegarder un copie de votre fichier out.conf quelque part, pour ne pas avoir à reconfigurer votre télécommande lors d’une réinstallation par exemple.
Nous allons vois après comment faire en sorte d’envoyer des commandes depuis S.A.R.A.H. ou DOMOTICZ.
DOESIT.
C’est cool mais si on est trop fainéant pour constuire les 2 composants électroniques peut-on avoir les références et des exemples de où les trouver sur le net ?
Marchi.
Salut,
Voici où les trouver:
https://www.geekbuying.com/item/Arduino-Mini-38KHz-Infrared-Transmitter-Module—Infrared-Receiver-Sensor-Module-Compatible-With-RPi-STM32-343530.html
Il existe ce modèle qui je pense doit faire l’affaire aussi:
https://fr.aliexpress.com/w/wholesale-raspberry-infrared-emitter.html?spm=a2g0w.search0104.0.0.1c2b2b91MyUTmw&initiative_id=SB_20180826140834&site=fra&groupsort=1&SortType=price_asc&g=y&SearchText=raspberry+infrared+emitter
Ce tuto n’est pas limité à ces modèles précisément.