Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Na Parte 1, demonstrei como montar o RPi + VS1838b e configurar o módulo LIRC do Raspbian para receber comandos IR de um remoto IR. Todos os problemas de configuração de hardware e LIRC são discutidos na parte 1. A Parte 2 demonstrará como fazer a interface do módulo hardware + LIRC que configuramos na Parte 1 com o python.
Remoto [Receptor IR + RPI] LIRC Pythondisplay (ou enviar).
Suprimentos
Nenhum
Etapa 1: ocultar Devinput.lircd.conf
Seus arquivos de configuração remota serão colocados no diretório /etc/lirc/lircd.conf.d. O LIRC encontrará qualquer arquivo neste diretório, desde que tenha uma extensão.conf (ou seja: JVC.lircd.conf). Não usaremos o arquivo devinput.lircd.conf, portanto, o ocultaremos alterando a extensão da seguinte forma, renomeando devinput.lircd.conf para devinput.lircd.conf.copy
$ sudo mv /etc/lirc/lircd.conf.d/devinput.lircd.conf /etc/lirc/lircd.conf.d/devinput.lircd.conf.copy
Etapa 2: Baixe o arquivo.conf para o seu controle remoto
De longe, a maneira mais fácil de obter um arquivo.conf remoto é baixá-lo da enorme biblioteca em lirc.sourceforge.net Mesmo que seu modelo remoto específico não esteja listado, é MUITO provável que outro modelo do mesmo fabricante funcione bem. Basta localizar o fabricante do seu controle remoto e clicar em um modelo que esteja próximo. Se não tiver certeza de qual modelo está próximo, você pode olhar o conteúdo de cada modelo e encontrar um que seja próximo ao seu.
A maneira mais difícil de obter um arquivo.conf é criar o seu próprio usando a ferramenta interna irrecord, mas não tive sucesso ao tentar criar um arquivo usando este utilitário, apesar de muito esforço. Existem muitas outras pessoas com dificuldades semelhantes para usar o irrecord e eu recomendo fortemente o caminho fácil de baixar um arquivo.conf de lirc.sourceforge.net
Seus arquivos de configuração remota serão colocados no diretório /etc/lirc/lircd.conf.d. O LIRC encontrará qualquer arquivo neste diretório, desde que tenha uma extensão.conf (ou seja: JVC.lircd.conf).
Etapa 3: código Python
Aqui está um código para testar.
do lirc import RawConnection
def ProcessIRRemote ():
#get IR command #keypress format = (hexcode, repeat_num, command_key, remote_id) try: keypress = conn.readline (.0001) exceto: keypress = "" if (keypress! = "" e keypress! = None): data = keypress.split () sequence = data [1] command = data [2] #ignore command repete if (sequence! = "00"): return print (command)
#define Global
conn = RawConnection ()
imprimir ("Iniciando …")
enquanto verdadeiro:
ProcessIRRemote ()