常见问题
烧录固件时,/dev/ttyUSB0没有权限。
在很多时候,在Linux下需要使用USB串口调试烧录固件,如果不是使用root用户,极有可能遇到权限问题。
比较野蛮的方法是使用chmod 修改权限(缺点是USB重新插拔后将失效),代码如下:
sudo chmod 777 /dev/ttyUSB0
第二种方法为查看/dev/ttyUSB0的所属用户组(通过ls -al /dev/ttyUSB0查看,ubuntu22.04下为dialout),将当前用户添加至该用户组,重新登陆生效。代码如下:
#在ubuntu 22.04下测试通过。添加一次,始终有效
sudo adduser `id -nu` dialout
Windows与Linux双系统切换时时间改变。
主要是Windows与Linux对待硬件时钟的方式不一样。将Windows改为UTC时间,注册表如下:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=dword:00000001
Linux(如ubuntu)下设置代理。
在编译openwrt或者buildroot时,需要下载大量的源代码,此过程及其容易因为网速问题而失败(如只有几KB的网速)。
如果设置代理到国外(如硅谷),则能极大提高编译成功率。
openwrt/buildroot通常采用wget/curl作为下载工具。
下列为通过环境变量设置代理的方式(视情况不止wget或curl支持)。
变量名称 | 说明 | 备注 |
---|---|---|
http_proxy | http代理 | |
https_proxy | https代理 | |
ftp_proxy | ftp代理 | |
no_proxy | 不代理的地址 | 多个地址采用逗号分割,支持域名。如.cn表示中国的域名不使用代理 |
变量名称 | 说明 | 备注 |
---|---|---|
http_proxy | http代理 | 唯一为小写的环境变量 |
HTTPS_PROXY | https代理 | |
[url-protocol]_PROXY | 其它协议代理 | [url-protocol]为协议,如HTTPS则为https代理。 |
ALL_PROXY | 默认代理 | 如某个协议未设置代理,则使用此值 |
NO_PROXY | 不代理的地址 | 多个地址采用逗号分割,支持域名。如.cn表示中国的域名不使用代理 |