Raspberry Pi简单来说就是一个低功耗的卡片PC主机,当然他的处理能力要弱很多,可以是 用来教孩子编程,放高清(带GPU和HDMI输出),当然你可以用它来做很多事情,如果你动 手能力强,也可以自己扩展他,一切皆有可能。

Raspberry Pi主要分为两个型号,A型号是低配,B型号是高配,我用的是B板,这里都是基 于B板的描述,板子包括2个2.0的USB口,一个LAN口,HDMI/RCA/AUDIO输出口个一个,一个 MicroUSB口负责电源接入。可以看到,如果完整运行Raspberry Pi还需要一些输入输出设备 ,他自己就类似一个PC主机。下面是我配置Raspberry Pi时候涉及到的一些相关步骤。

1 初步的配置目的

配置简单的Raspberry Pi,使之能通过HDMI连接TV播放视频。

2 购置的配件

Raspberry Pi板子就不用说了,淘宝到处都是,我买的是B板,其他的需要购买的配件包括:

  • 一个USB键盘
    我买的是无线键鼠套装,方便点,毕竟未来会放在客厅用,有线总是个累赘。
  • 一根HDMI线
    连接电视用,HDMI可以同时负责视频和音频传输,也可以用RCA接口和AUDIO接口接入电视 ,问题也不大。只是高清自然是不行了,这样太对不起Raspberry Pi了吧。
  • 一根网线
    当然你的有有线网络接入,如果你家里只有无线接入,可以通过购置一个带有线口的无线 设备做repeater接入,我用的是tplink 的TL-WR710N。
  • 一张SDHC卡
    我买的Kingston 16G class4,买之前最好去网上查查是否支持1,据说挑卡。
  • 一个放置Raspberry Pi的盒子
    固定和防尘用(我忘了买,挺麻烦的,不好固定,简单用个纸盒先凑合着)。

3 安装系统

第一步自然是把线接好,这个就不多说了,如果你和我一样,没有买固定的盒子,还是注意 经典和力度,比较板子还是挺脆弱的。然后下载系统镜像,Raspberry Pi官网提供几个版本 的镜像下载,我直接用的最简单的那个版本wheezy,基于Debian的Raspbian预配置版本,带 桌面和浏览器以及开发工具和一些示例的多媒体代码,安装好之后就能用,下载地址: Raspberry Pi Download,准备总做就做好了。

3.1 写入系统到SD

我用的是Ubuntu系统,机器自带SD读卡器,直接插入SD卡,检查SD卡路径:

$sudo fdisk -l

通常都是sdb,不清楚你就对比一下插入前后的输出,如果你的SD卡已经分区,并且自动 mount了,记得unmount它,接下来我们写入下载的系统镜像文件:

$unzip 2012-12-16-wheezy-raspbian.zip
$sudo dd bs=1M if=2012-12-16-wheezy-raspbian of=/dev/sdb

等上几分钟或者十几分钟,视SD卡速度而定,完成之后弹出SD卡,插入Raspberry Pi卡槽中 ,通过MicroUSB插入电源,注意电源一般的手机充电器都可以,前提是输出需要大于700毫 安,我试过IPad充电器也可以(2100mA),Rasberry Pi不带开关,电源插入自动开机,关 机只能拔电源,正常就可以在TV上看到Rasberry Pi的启动过程了。

3.2 配置Rasberry Pi

第一次系统启动自动进入Raspi-config配置界面,设置正确的timezone、 locale(en_US.UTF8)、Keyboard(Generic 105-key intel PC)、ssh enable,最后是 expand-rootfs,完成重启系统。

经过漫长的expand rootfs之后,终于来到登入终端,用pi/raspberry登入系统,用命令 startx启动进入xwindows,这时候你应该就可以正常上网了,lan通过dhcp自动获取ip地址

3.3 中文环境配置

缺省我用的是en_us.utf8环境,当然我也不打算修改,我需要的只是显示中文和输入中文 ,只需安装字体和输入法。

$sudo apt-get install ttf-wqy-zenhei
$sudo apt-get install scim-pinyin

3.4 自动登入xwindows2

3.4.1 自动登入

修改/etc/inittab文件,注释行:

1:2345:respawn:/sbin/getty --noclear 38400 tty1

添加行:

1:2345:respawn:/bin/login -f pi tty1 </dev/tty1 >/dev/tty1 2>&1

3.4.2 自动启动xwindows

修改~/.bash_profile,添加如下行:

if [ -z "$DISPLAY" ] && [ $(tty) = /dev/tty1 ]; then
  startx
fi

3.5 lxde键盘快捷键

直接查看".config/openbox/lxde-rc.xml",查看keyboard部分即可,如需添加自己的映射 ,照着添加就行。

3.6 播放视频

系统缺省安装了omxplayer播放器,这是一个命令行播放器,GPU支持,上传一个视频,播放 视频看效果:

$omxplayer test.avi

另外提醒一下,omxplayer支持不启动xwindows播放视频,我之前一直以为必须启动 xwindows才行,估计其他的播放器也都一样,确实没太注意,如果你需要播放视频,你可以 直接在远程通过ssh登入Raspberry Pi,执行omxplayer命令,视频会直接显示在电视上,不 管你是不是启动了xwindows。

Enjoying!

4 远程控制

支持控制,包括终端控制的ssh和远程桌面的vnc、rdp等,我这里用了简单的共享键盘方式 ,通过和客户端共享一套输入设备实现,简单说就是用我的笔记本键盘鼠标操作 Raspberry Pi的桌面(我这里是电视),实现方式:

  • 修改ssh允许X11 Forward
    $sudo vi /etc/ssh/sshd_config
    

    设置X11Forwarding的值为yes,重启sshd

  • 在Raspberry Pi上安装x2x
    $sudo apt-get install x2x
    
  • 在你的客户端远程登入Raspberry Pi
    $ssh -X pi@192.168.1.104 'x2x -east -to :0'
    

配置完成,当然这里你的Raspberry Pi上的xwindows必须启动才行,移动你的鼠标到最右边试试看,鼠标跑到电视上去

5 XBMC

播放本地视频用omxplayer基本上能解决了,但是对于播放网络视频比如youku啥的,靠xwindows自然是不给力,毕竟一个Raspberry Pi的cpu太弱了,很容易跑死,XBMC自然是不二的选择。

XMBC针对Raspberry Pi有几个发布版本,集成OS,直接刷就行了,我已经刷好了系统,自然选择通过deb方式来安装了,查了查,热心人已经发布了编译好的包,参考http://michael.gorven.za.net/raspberrypi/xbmc 安装即可,对于中文支持,直接设置就可以了,先设置字体:

  • 先设置字体:System - Settings - Appearance - Skin - Fonts 选择Arial based
  • 然后选择中文:System - Settings - Appearance - International - Language 选择Chinese(Simple)

然后是安装视频网站插件,缺省都是国外的视频网站,要支持国内的视频网站,需要先安装插件,去这里http://code.google.com/p/xbmc-addons-chinese/ 下载插件repository.googlecode.xbmc-addons-chinese-eden.zip,然后通过XBMC安装就可以了。

播放视频的时候CPU在55%左右,还是有点偏高,还得研究研究怎么优化一下。

具体的XBMC键盘控制参考http://wiki.xbmc.org/index.php?title=Keyboard, 完整版可以参考xbmc keyboard.xml, 不过还是要仔细找, 我找使用键盘收藏视频找了半天,用“c”键即可。

5.1 字体

xbmc的缺省字体字符集应该不是gbk的,显示中文很多子都是方块,我直接用wqy替换,没找到怎么新增字体的方法:

$sudo cp /usr/share/fonts/truetype/wqy/wqy-zenhei.ttc arial.ttf /usr/share/xbmc/media/Fonts/

备份arial.ttf,然后重命名wqy字体即可

5.2 超频

Raspberry Pi运行XBMC负载很重,很容易就跑到100%,可以尝试超频,不过这个要小心,毕竟还是危险的,当然Raspberry Pi 还是有保护措施,设置overclock时当温度超过85度时,会自动disable3,从网上情况看,超频到900应该问题不大,下面是我的设置:

arm_freq=900
core_freq=450
sdram_freq=450
over_voltage=2
gpu_mem=128
arm_freq_min=700
initial_turbo=30

设置arm_freq_min主要是因为新版本的kernel会自动调整主频,看起来好像不是很靠谱,我的长期运行在500左右,可以通过/proc/cpuinfo查看。

6 遇到的问题

  • 键盘配置不对

    当你按下“|”键的时候,出来的键值不对,那应该是用了GB的键盘布局,可以通过如下方式修改:

    $sudo vi /etc/default/keyboard
    

    修改XKBLAYOUG值为“us”,重启系统。

  • 播放视频没有声音,并且视频没有满屏4

    通过如下方式修改hdmi配置

    $sudo vi /boot/config.txt
    

    修改hdmi_drive值为2,如果改行被注释,也需要取消注释。

    通过如下命令行播放视频:

    $omxplayer -r -o hdmi test.avi
    
  • omxplayer中文乱码

    可以直接在omxplayer中指定字体,直接使用wqy字体即可:

    $omxplayer -t 1 -p -r --font /usr/share/fonts/truetype/wqy/wqy-zenhei.ttc --align center -o hdmi test.avi
    
  • omxplayer不支持外置字幕

    目前新版本omxplayer已经支持外置字幕,可以去网站上下载5,不过目前好像只支持utf-8,不行只能通过enca转码。

  • undefined symbo问题

    “/usr/bin/omxplayer.bin: Symbol lookup error: /usr/bin/omxplayer.bin: undefined symbol: vc_xxxxxxxxxx.”

    如果你碰到类似问题,基本上是firmware没有更新,你可以通过rpi-update更新。

  • 如果你遇到一些我没遇到的问题,建议参考elinux6

Footnotes:

1

Raspberry Pi兼容SD卡查询地址:http://elinux.org/RPi_SD_cards

2

Raspberry Pi auto login : http://elinux.org/RPi_Debian_Auto_Login

5

omxplayer download site: http://omxplayer.sconde.net/

6

elinux Raspberry Pi troubleshooting: http://elinux.org/R-Pi_Troubleshooting



blog comments powered by Disqus