最近拿出了我吃灰已久的香橙派 zero2,想着它有着红外功能,刚好最近买了一些红外遥控器,想着做些好玩的红外功能。
首先是安装新系统,装的armbian 最新的ubuntu 22.04。搜索一下 /dev 文件夹 ,发现了 lirc0 这个设备,这个就是我要找的红外设备了。
然后去 lirc 官网 找红外教程。首先是安装依赖:
sudo apt install lirc sudo apt install liblircclient-dev
一、Python 记录
网上有人说用 apt 安装 python3-lirc,会发现根本没有这个东西,在骗人。用 python 的话需要用 pip 安装 lirc 包就可以了
我照着 python lirc 的教程写了一个简单的红外接收信号程序
import socket from lirc import Client,LircdConnection from time import sleep c = Client( connection=LircConnection( address="/var/run/lirc/lircd", socket=socket.socket(socket.AF_UNIX,socket.SOCK_STREAM), timeout=5.0)) c.start_logging("/home/user/rc1.log")#不能用相对路径 sleep(4) c.stop_logging() c.close()
期间出现一些报错
1)"_client " 没找到
答不能用sudo
2)Connection refused
我把 /var/run/lirc/lircd 文件属组改成 user,然后777了
3)依然 Connection refused
答案是 lircd 服务没起来,restart lircd服务就好了
4)Cannot open input logfile:~/rc1.log
答不能用 shell 的相对路径,py认不得,得用绝对路径。
结果到最后,没输出,他妈的,连报错都没有,啥玩意,(自己分析了一下,应该是这包的bug,还没收到 stop 指令就直接跳出了)本来还想用python写一些程序,这下行不通了。
二、其他尝试
标签:02,socket,python,IR,香橙,红外,lircd,lirc From: https://www.cnblogs.com/klezy/p/17529548.html