Raspbian [Stretch / Buster]内核4.19.X配置红外空调遥控器gpio-ir笔记

Raspbian [Stretch / Buster]内核4.19.X配置红外空调遥控器gpio-ir笔记

  • 使用Raspbian Buster版本 gpio-ir补丁和运行环境安装:
  • 红外信号录入与发射
    • 信号录入首先要生成一个样板
        • 手动编辑遥控器配置文件
        • 手动录制
    • 发射信号
    • 推荐另一种IR控制空调家电的折腾方案

[Stretch / Buster]内核4.19.X配置红外空调遥控器gpio-ir笔记)

使用Raspbian Buster版本 gpio-ir补丁和运行环境安装:

首先执行.

sudo su -c "grep '^deb ' /etc/apt/sources.list | sed 's/^deb/deb-src/g' > /etc/apt/sources.list.d/deb-src.list"
sudo apt update
sudo apt install devscripts

然后执行.

sudo apt install dh-exec doxygen expect libasound2-dev libftdi1-dev libsystemd-dev libudev-dev libusb-1.0-0-dev libusb-dev man2html-base portaudio19-dev socat xsltproc python3-yaml dh-python libx11-dev python3-dev python3-setuptools
mkdir build
cd build
apt source lirc
wget https://raw.githubusercontent.com/neuralassembly/raspi/master/lirc-gpio-ir-0.10.patch
patch -p0 -i lirc-gpio-ir-0.10.patch
cd lirc-0.10.1
debuild -uc -us -b
cd ..
sudo apt install ./liblirc0_0.10.1-5.2_armhf.deb ./liblircclient0_0.10.1-5.2_armhf.deb ./lirc_0.10.1-5.2_armhf.deb 

安装命令将失败报错请先暂时忽略。然后首先配置下面的文件,即/boot/config.txt和/etc/lirc/lirc_options.conf。之后,再次尝试一下安装命令

请将以下行添加到/boot/config.txt

dtoverlay=gpio-ir,gpio_pin=17
dtoverlay=gpio-ir-tx,gpio_pin=18

备份

sudo cp /etc/lirc/lirc_options.conf.dist /etc/lirc/lirc_options.conf
sudo cp /etc/lirc/lircd.conf.dist /etc/lirc/lircd.conf

用于接收时配置 sudo vi /etc/lirc/lirc_options.conf 修改以下内容 然后重新启动 lirc服务 sudo service lircd restart

driver = default
device = /dev/lirc1

用于发送时配置 sudo vi /etc/lirc/lirc_options.conf 修改以下内容 然后重新启动 lirc服务 sudo service lircd restart

driver = default
device = /dev/lirc0

配置完成再次尝试以下安装命令,这次将成功安装

sudo apt install ./liblirc0_0.10.1-5.2_armhf.deb ./liblircclient0_0.10.1-5.2_armhf.deb ./lirc_0.10.1-5.2_armhf.deb 

红外信号录入与发射

简单的红外遥控信号录入直接运行 irrecord -d /dev/lirc0 --disable-namespace ,按提示做完后把生成的文件放到 /etc/lirc/lircd.conf.d/ 目录就行了。
空调遥控信号录入过程稍微复杂一点

信号录入首先要生成一个样板

开始自动录制:

irrecord -f -d /dev/lirc0 --disable-namespace

阅读提示信息,根据提示按Enter、输入 遥控器名称 、按Enter、按照要求随机按遥控器、输入 按钮名称 、按对应的遥控器按钮。完成录制后,当前目录下会生成一个遥控器配置文件 "遥控器名称.lircd.conf"

手动编辑遥控器配置文件

样板文件 遥控器名称.lircd.conf , begin raw_codes 和 end raw_codes 之间的内容需要手动修改

手动录制

# -m --mode 使用行列显示模式,不显示pulse、space
mode2 -m -d /dev/lirc0`

除去第一行很大的那个数,把其他数据全部复制,粘贴到配置文件的 name 27 下方

begin remote

  name  kk
  flags RAW_CODES|CONST_LENGTH
  eps            30
  aeps          100

  gap          103882

      begin raw_codes
name 27
     8940     4466      607     1684      608      575
      610      576      609     1709      608     1682
      607     1683      609      577      606      577
      608     1680      610     1709      581      602
      584     1706      609      577      608      577
      608      576      609      578      627      560
      603      577      608      576      608      574
      610      575      609      577      607      577
      607      577      581      601      582      603
      581      602      582      631      553     1707
      609      576      609     1683      607      578
      607      576      608     1681      609      576
      609
      end raw_codes
end remote

配置文件复制到指定目录 /etc/lirc/lircd.conf/ 并重启lircd服务

sudo cp KK.lircd.conf /etc/lirc/lircd.conf.d/
sudo service lircd restart

发射信号

发射命令:irsend SEND_ONCE 遥控器名称 按钮名称
irsend SEND_ONCE KK 27
#空调调整到27C 

内核4.19不包含lirc_dev,因此建议使用gpio-ir详情请点击查看

参考1:https://www.raspberrypi.org/forums/viewtopic.php?t=235256
参考2:http://blog.sina.com.cn/s/blog_8f689c6a0102v1jg.html

推荐另一种IR控制空调家电的折腾方案

树莓派domoticz + nodemcu(esp826)+Esp_Easy IR 固件用于 发送 接收控制空调家电

你可能感兴趣的:(树莓派)