HDMI-VGA转换器黑屏的排障方案

这个配置提供了HDMI的所有故障排除用的保守设置。
请将SD卡插入电脑,将这些内容存为config.txt。(原来的config.txt可以备份一下。)

hdmi_force_hotplug=1
config_hdmi_boost=4
hdmi_group=2
hdmi_mode=9
hdmi_drive=2
hdmi_ignore_edid=0xa5000080
disable_overscan=1

解释:
hdmi_force_hotplug:强制使用HDMI输出(强行认为HDMI口已经插入了设备)
config_hdmi_boost:HDMI信号增强。
hdmi_group、hdmi_mode:决定分辨率。group=2, mode=9 代表800×600 @ 60Hz。
hdmi_drive:强制音频输出到HDMI口(注意,仅适用于带音频的HDMI-VGA转换器!!如果想让音频从模拟输出,则去掉此项!!)
hdmi_ignore_edid:强行按hdmi_group和hdmi_mode规定的分辨率输出。不检测显示器自身的分辨率。
disable_overscan:强行禁止保留黑边功能。

这个文件会命令树莓派:强制使用800×600分辨率,60Hz刷新率,并强制从HDMI输出。
请先尝试这样开机。如果开机能成功,就把hdmi_group和hdmi_mode,更改成自己显示器的分辨率即可。
所有可用的分辨率列表请见:自定义树莓派的显示分辨率
如果不行,请更改hdmi_mode的值更换以下其他分辨率:

hdmi_mode=4    640x480   60Hz
hdmi_mode=9    800x600   60Hz
hdmi_mode=16   1024x768  60Hz
hdmi_mode=17   1024x768  70Hz
hdmi_mode=23   1280x768  60Hz

Raspbian 中国软件源

花了些时间整理了目前最新的树莓派中国大陆地区的软件源,记下来,希望对大家有帮助。

中国科学技术大学
Raspbian http://mirrors.ustc.edu.cn/raspbian/raspbian/

阿里云
Raspbian http://mirrors.aliyun.com/raspbian/raspbian/

清华大学
Raspbian http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/

华中科技大学
Raspbian http://mirrors.hustunique.com/raspbian/raspbian/
Arch Linux ARM http://mirrors.hustunique.com/archlinuxarm/

华南农业大学(华南用户)
Raspbian http://mirrors.scau.edu.cn/raspbian/

大连东软信息学院源(北方用户)
Raspbian http://mirrors.neusoft.edu.cn/raspbian/raspbian/

重庆大学源(中西部用户)
Raspbian http://mirrors.cqu.edu.cn/Raspbian/raspbian/

中山大学 已跳转至中国科学技术大学源
Raspbian http://mirror.sysu.edu.cn/raspbian/raspbian/

新加坡国立大学
Raspbian http://mirror.nus.edu.sg/raspbian/raspbian

牛津大学
Raspbian http://mirror.ox.ac.uk/sites/archive.raspbian.org/archive/raspbian/

韩国KAIST大学
Raspbian http://ftp.kaist.ac.kr/raspbian/raspbian/
阅读全文

镜像写入工具USB Image Tool介绍

几乎所有的新手教程都使用Win32DiskImager作为系统安装工具——中文的、英文的、官方的、eLinux wiki的,不一而足。
但是这个工具不支持中文目录名(文件或目录有中文,会出现123错误),不支持压缩,必须先插好SD卡,再开软件。
下面要介绍的USB Image Tool,就是Win32DiskImager的一个更方便的替代品。
界面先睹为快,相信您一看到界面,就会发现和win32diskimager不一样的感觉:
20130831204912500-0
此工具特点: 阅读全文

编译树莓派操作系统内核

首先在https://github.com/raspberrypi/linux/上下载最新的内核源代码,如当前最新的内核下载连接是:https://github.com/raspberrypi/linux/archive/rpi-3.6.y.zip

然后安装编译工具如gcc、make、patch等,可以使用apt-get install gcc make命令,再检查系统时间,如果时间不对,可以手动设置一下时间,也可以重新启动ntp服务,自动对时。将下载的内核文件放在随便找个目录放着,并用unzip解压它,

unzip rpi-3.2.27.zip

如果命令不成功则可能是没有安装unzip,可以使用apt-get install unzip命令安装就行了。
开始编译内核,首先使用以下命令对内核进行配置。

make menuconfig

载图太麻烦了,所以我直接用鼠标选了图,大家将就的看看吧。
需要说明的是在System Type这一项里,一定要选择合适的cpu也就是armBCM2708这个型号,其它的东西大家可以自己选择,需要什么用星号表示将这一项编译进内核,M表示编译成模块。

.config - Linux/arm 3.2.27 Kernel Configuration

 Arrow keys navigate the menu.   selects submenus --->.  Highlighted letters are
 hotkeys.  Pressing  includes,  excludes,  modularizes features.  Press
 to exit, <?> for Help, </> for Search.  Legend: [*] built-in  [ ] excluded   module  < >
 module capable

           [*] MMU-based Paged Memory Management Support
               ARM system type (Broadcom BCM2708 family)  --->
               *** System MMU ***
               Broadcom BCM2708 Implementations  --->
               *** Processor Type ***
           -*- Support ARM V6 processor
               *** Processor Features ***
           [*] Support Thumb user binaries
           [ ] Disable I-Cache (I-bit)
           [ ] Disable D-Cache (C-bit)
           [ ] Disable branch prediction
           [*] Use non-cacheable memory for DMA
           [ ] ARM errata: FSR write bit incorrect on a SWP to read-only memory
           -*- ARM errata: Invalidation of the Instruction Cache operation can fail
           [ ] ARM errata: Possible cache data corruption with hit-under-miss enabled
<select>    < Exit >    < Help ></select>
<select>


选择完了后可以使用左右键来进行选择[Select] [ Exit ] [ Help ],退出时会自己保存配置。

如果你的在做make menuconfig时没有看到上面的画面,而是看到一堆英文,则一般是没有安装libncurses5-dev开发库,使用apt-get install libncurses5-dev来安装就行了。

当选择完成后直接make就可以了,make程序会自己编译内核以及模块。安装模块使用make modules_install命令,在make运行完成后需要重新生成一个镜像。这需要使用其它的工具。在https://github.com/raspberrypi/tools上面有一个目录mkimage,这个目录下存有这些工具,将这里面的文件全部下载下来,存放在一个目录中,然后执行下面的命令:

python imagetool-uncompressed.py 你的源代码目录/arch/arm/boot/Image

很快这个命令就会执行完成,你会发现在目录下有一个kernel.img的文件,这个就是你的新内核,将它覆盖boot目录下的kernel.img文件,现在你可以使用新内核来启动你的pi了。
PS:make内核时需要很长时间,我编译内核加上711个模块用了8个多小时。