Raspbmc 设置红外线接收器
此篇文章原稿是发在Raspbmc 万博manbext登录网址区,我已经依照文章说明,完成设定,为了让E文不熟悉以及不想翻墙的同鞋可以依样画葫芦,所以再此分享。如果要参考E文的同鞋,可以至 http://forum.stmlabs.com/showthread.php?tid=5549 。
首先你要买个红外线接收器,一般家用电视遥控为38KHz,所以跟店家说要买 38KHz的红外线接收器,就可以了,E文中是以TSOP4838 为例子,但是我测试的结果,目前市场上的红外线接收器都是可以通用。
http://d.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=4c8545528226cffc6d2abfb7893a3bad/42a98226cffc1e177142bffa4a90f603728de978.jpg?referer=9919f428572c11df87c68b135716&x=.jpg
在图片中可以看到
Receiver Pin 1 is DATA(资料传输用), 请接到 Pi pin 12 (GPIO 18);
Receiver Pin 2 is GND(负极), 请接到 Pi pin 6 (GROUND)
Recevier Pin 3 is POWER(正极), 请接到 Pi pin 1 (3.3V)
如果你搞不清楚你买来的脚定义,记得跟店家或是上网查询相关资料,不然是无法正确使用的。
目前市售的38KHz红外线接收器都通用3.3V及5V,建议从3.3V开始测,如果3.3V不能用,再换5V,正负极不可以接反,否则会造成红外线接收器损坏,建议同鞋买二个红外线接收器,以免接反烧坏,你还要跑一趟店家。
要衔接的电线可以购买杜邦线来做连接,就是像你电脑主机板里的连接线。
http://shop.avrvi.com/images/200911/1259288034573616261.jpg
下面再附上 Pi 的定义图
http://h.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=8ef10caeb319ebc4c478769cb21dbec1/0b55b319ebc4b745b46984ddcffc1e178b82157f.jpg?referer=fdbb04f37bf40ad14cf3f3d35316&x=.jpg
如果你都看懂我上面写什么,而且有能力操作,那就开始下载 Raspbmc 吧,链结 http://pan.baidu.com/share/link?shareid=224904&uk=3256396273
下载完成后,将它烧录到你的SD卡,2G~16G的都可以,它会自动安装及扩展容量。
烧录完成,就将SD卡插到你的Pi里,然后插上网线(网路需有DHCP),约十至二十分钟,就会自动安装成。
如果不会安装完成,发个信息给我,我再把我的SD卡做成 IMAGE 上传到百度云。
进入 XBMC画面,首先至最右边的设定,更改至中文(记得字型要设 arial ),设完以后,回到主画面然后选程式,你会看到下方出现一个Pi 的图形,再选择进去,到最右边的 IR 设定中,预设值是二个都开启,如果没有开启,请设定开启,然后你可以关机了。
再来将你的红外线接收器装上,并重新启动Pi,如果你要在本机操作指令,此时选择离开,Raspbmc会跳出一个视窗要求你按 ESC,按完ESC键后,会跳出 LOGIN ,请输入 pi ,password 则输入 raspberry。
接下来我们要开设定接收器了,首先启动红外线接收器,输入
sudo modprobe lirc_rpi
然后,将红线接收器的接收值清除,输入
sudo kill $(pidof lircd)
最后,再启动测试,输入
sudo mode2 -d /dev/lirc0
把你的遥控器,对准红线接收器,按下任意键,你会在的你屏幕上看到类似下面的代码出现
pulse 1681
space 4816
pulse 1695
space 4784
pulse 1333
space 3638
如果没有出现,会有下列几种情况:
1.你的红外线接收器坏了,请你换一个新的。
2.你线接错了,最常发生的是正、负极接反。
3.你不是用38KHz的遥控器,请拿电视的遥控器来测试。
4.线路接触不良,你可以拿三用电表来测试,是否有 3.3V输出。
如果你已经看到代码出现,那我们就可以开始设定遥控器。
首先,清除接收器指令
sudo kill $(pidof lircd)
列出遥控器对应指令
sudo irrecord --list-namespace
你可以看到 KEY_0 KEY_1 ……等值,我们常用的是
KEY_UP
KEY_DOWN
KEY_LEFT
KEY_RIGHT
KEY_ESC
KEY_ENTER
KEY_SPACE
其它的你就自行记住吧!
接下来我们再清除遥控器记忆,请输入
sudo kill $(pidof lircd)
要开始设遥控器了,请输入
irrecord -d /dev/lirc0 ~/lircd.conf
请先按enter二次,再按住你的遥控器任意键,直到屏幕上的...................跑完。
跑完后,你刚刚按住的那个键,请一直重覆按,直到屏幕上的...................跑完。
接下来就是设定了,请先输入
KEY_UP
然后按遥控器上的你要设定为 上 的那个键,然后再按ENTER。
再输入
KEY_DOWN
然后按遥控器上的你要设定为 下 的那个键,然后再按ENTER。
重覆上述动作,一直到你设定完成,最后按enter离开。
输入
nano /home/pi/lircd.conf
你会看到类似下面的画面
# Please make this file available to others
# by sending it to <lirc@bartelmus.de>
#
# this config file was automatically generated
# using lirc-0.9.0-pre1(default) on Sat Dec 22 23:05:43 2012
#
# contributed by
#
# brand: /home/pi/lircd.conf
# model no. of remote control:
# devices being controlled by this remote:
#
begin remote
name/home/pi/lircd.conf
bits 16
flags SPACE_ENC|CONST_LENGTH
eps 30
aeps 100
header 90144495
one 5631687
zero 563 548
ptrail 560
repeat 90132245
pre_data_bits 16
pre_data 0xEF10
gap 107922
toggle_bit_mask 0x0
begin codes
KEY_UP 0x02FD
KEY_DOWN 0x827D
KEY_LEFT 0xE01F
KEY_RIGHT 0x609F
KEY_ENTER 0x22DD
end codes
如果你没看到 KEY_UP 0x02FD 这行字,那就表示你没设定成功,就请从头再确认。
要离nano 编辑器,请按 ctrl+x 。
最后我们把此值复制到 Raspbmc 的其中一个内定值中:
sudo cp /home/pi/lircd.conf /etc/lirc/xbox-lircd.conf
在这里我们是复制到 xbox 这个值,所以重启后,再回到最右边的 IR 设定中,并且在第三个选项,选xbox,再重启,就大功告成了。
目前遇到的问题,有很大的机会,你按下遥控器的按键一次,但是画面上会出现二次,例如你按左一次,但是画面上会跑二次左,这是常见的BUG,是无解的。
另外就是遥控器的问题,如果你用的是非标准38KHz的遥控器,可能会感应不出来,此问题就无解了,只能请你用标准的电视遥控器。
我想会有同鞋会问:那在家中电视与Pi是使用同一个遥控下,如何区隔呢?
基本上你只能找一个死角,是按遥控器后不会干扰到电视的地方,然后把红外线接收器放置在那里,才能够解决这个问题。 感谢分享。 不错,哈哈,收了 本帖最后由 baoxiaozhong 于 2013-1-18 21:50 编辑
有同鞋说原始下载点安装速度很慢,需要提供百度云下载点:
http://pan.baidu.com/share/link?shareid=227850&uk=3256396273
此版本为RC3 2013 01 07 Nightly 版 ,解压缩后,再烧录至SD卡,进去后就是正体中文,请再自行修改为简体中文,已安装字幕下载程式,可选择由射手网下载字幕,已中度超频,解析度为 1920x1080 24Hz ,看1080p的影视加字幕不会有lag掉字的情形。
关于遥控器按一下会感应多下的问题,我找到答案了,原因在于超频,只要你超频就会感应错误,解决方式:
看1080P 的影视才超频,720p就不要超频了。 本帖最后由 baoxiaozhong 于 2013-1-19 10:34 编辑
pi 组装完成
http://c.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=6b652eab4fc2d562f608d0e8d72ae1d2/9a504fc2d5628535378052ea90ef76c6a6ef639d.jpg?referer=5257ac23bc3eb1351dd0838bcd73&x=.jpg
红外线接收器
http://g.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=cd5d3770a61ea8d38e227401a7314173/838ba61ea8d3fd1fbf9322f1304e251f94ca5f67.jpg?referer=2363e42181cb39db98d75366993d&x=.jpg
进入超频及外红线 设定选单
http://b.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=a97b48e44134970a4373102aa5f1a0f5/fc1f4134970a304e24b72031d1c8a786c8175c67.jpg?referer=387303065266d016270eaa189c3d&x=.jpg
超频及外红线 设定选单
http://e.hiphotos.baidu.com/album/s%3D550%3Bq%3D90%3Bc%3Dxiangce%2C100%2C100/sign=9b6560998535e5dd942ca5da46fdd6d2/d4628535e5dde7114448c33da7efce1b9c166167.jpg?referer=689904ce33fa828b8834a9d3cf3d&x=.jpg 翻译得不错,对于电视有可能受遥控器影响的情况,可以用一个卡片把电视的接收端暂时封上。
注:这篇文章提到的方法在高清电视,即含有HDMI接口的电视上是不需要这么做的,因为HDMI接口中有个协议是直接支持用遥控器控制通过线连接的硬件设备的。 电视HDMI的部份我试过,大部份的遥控器上的 上、下、左、右和 ENTER ESC的对应键,会有下面的情形,遥控器上的上下键大部份会用在频道的调整,左、右键会用在声音的控制,OK和退回键,也会有其它的功能,除非你的电视一开始就是可以插网线的多媒体电视,才会把这些键独立出来,不过有了多媒体电视,再来装Raspbmc ,好像又是多余了。 目前卡在一个地方,那就是字幕问题,射手网抓下来字幕,有时候会发生时间徧移的情形,射手播放器(WIN 版本),有快速键可以直接调整,而且调整的时间不限,但 Xbian 和 Raspbmc 快速键内定值都没有可以设定字幕时间调整,而且时间最多也只能徧移10秒,不知道有没有同鞋有好方法的? 你是否可以翻译一下这个文章,这是一个用pi结合iphone手机开启车库门的创意,也是不错的,只是E文能力不济,请移步至:http://www.raspberrypi.org/phpBB3/viewtopic.php?f=63&t=25118&hilit=siriproxy&sid=aa0660b88dd63482d287d7fb089e0d60
如果有兴趣,你可以把http://linuxtoy.org/archives/cool-ideas-for-raspberry-pi.html这里提到的34个创意都尽量翻译一下,然后让站长成立一个专题给你,那你的工作就意义更大了。 这34个里我最喜欢的是那个把pi送到太空的项目,呵,希望你可以第一个翻译之…… 祝开心。