raspi-config
不可用。到目前为止,我可以通过编辑/boot/config.txt
或使用apt-get
安装缺少的软件来执行所有操作。 不幸的是,在我所看到的所有地方,相机上的所有教程(包括官方的RaspiCam-Documentation.pdf)都说首先要使用
raspi-config
启用它。那么,raspi-config对我可以手动复制的Pi实际做了什么?#1 楼
好。 raspi-config实际上有点bash,因此很容易看到它的作用:# is 0 to disable camera, 1 to enable it
set_camera() {
# Stop if /boot is not a mountpoint
if ! mountpoint -q /boot; then
return 1
fi
[ -e /boot/config.txt ] || touch /boot/config.txt
if [ "" -eq 0 ]; then # disable camera
set_config_var start_x 0 /boot/config.txt
sed /boot/config.txt -i -e "s/^startx/#startx/"
sed /boot/config.txt -i -e "s/^start_file/#start_file/"
sed /boot/config.txt -i -e "s/^fixup_file/#fixup_file/"
else # enable camera
set_config_var start_x 1 /boot/config.txt
CUR_GPU_MEM=$(get_config_var gpu_mem /boot/config.txt)
if [ -z "$CUR_GPU_MEM" ] || [ "$CUR_GPU_MEM" -lt 128 ]; then
set_config_var gpu_mem 128 /boot/config.txt
fi
sed /boot/config.txt -i -e "s/^startx/#startx/"
sed /boot/config.txt -i -e "s/^fixup_file/#fixup_file/"
fi
}
/boot/config.txt中显然有一个名为start_x的条目必须将其设置为1才能启用相机,并且gpu(gpu_mem)至少需要128 MB的内存。仔细检查似乎可以确认。
评论
如果有人感兴趣,这里是完整的源代码。该函数现在似乎称为do_camera。
–塞林
16-10-11在2:50
#2 楼
编辑/boot/config.txt文件,并确保以下几行如下所示:start_x=1 # essential
gpu_mem=128 # at least, or maybe more if you wish
disable_camera_led=1 # optional, if you don't want the led to glow
reboot
#3 楼
raspi-config所做的是更改/boot/config.txt
。禁用相机后,该文件中会有一个字符串,内容为start_x=0
。将其更改为start_x=1
将启用相机。编辑文件后,您将必须重新启动。我创建了一个脚本,该脚本在
/boot/config.txt
中搜索字符串“ start_x = 0”,如果找到,则将其更改为“ start_x = 1”。使用以下代码,不要忘记使用chmod + x并使用sudo运行。#!/bin/bash
grep "start_x=1" /boot/config.txt
if grep "start_x=1" /boot/config.txt
then
exit
else
sed -i "s/start_x=0/start_x=1/g" /boot/config.txt
reboot
fi
exit
评论
+1第一个grep的用途是什么?而且是否有可能在第一次启动之前就没有start_x = *这样的行?
–Gabber
17年6月15日在21:24
第一个grep可能对调试有用。脚本的操作不需要它。在我的Raspbian Stretch config.txt文件中,我在config.txt中找不到start_x行,因此该脚本无法按原样工作。
– Diomidis Spinellis
17/12/26在7:55
#4 楼
raspi-config
似乎支持非交互模式:您可以使用nonint
命令设置camera
# raspi-config nonint do_camera %d
# %d - Integer input - 0 is in general success / yes / selected, 1 is failed / no / not selected
sudo raspi-config nonint do_camera 0
有关更多详细信息,请检查选项的完整列表:
https: //github.com/l10n-tw/rc_gui/blob/master/src/rc_gui.c#L50-L100
#5 楼
它的Jayson用于带有ubuntu 20的Raspberry pi 4
为csi启用v4l2
sudo nano /boot/firmware/config.txt
添加以下行:
gpu_mem=512
disable_camera_led=1
start_file=start4x.elf
fixup_file=fixup4x.dat
评论
仅供参考,在config.txt中使用start_x = 1阻止我的xbian引导,并导致sd卡损坏,这意味着必须将一个新映像刷新到sd卡中。