赞
踩
操作涉及树莓派linux内核替换,由于我的树莓板子里跑了ROS,以免环境破坏,所以先进行镜像备份。
工具:win32diskimager-1.0.0-install.exe
原理:将SD卡中文件打包读取到*img中
地址:https://github.com/raspberrypi/tools
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 make bcm2711_defconfig
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup sudo vim /etc/apt/sources.list #阿里源 deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
sudo apt-get install bc
sudo apt-get install libncurses5-dev libncursesw5-dev
sudo apt-get install zlib1g:i386
sudo apt-get install libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5
sudo apt-get install build-essential
sudo apt-get install bison
sudo apt-get install flex
sudo apt-get install libssl-dev
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 bcm2711_defconfig
make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- KERNEL=kernel7 -j4 zImage modules dtbs
说明:
j4 指定多少core进行编译,根据自己电脑性能来
zImage 内核镜像。
modules 生成驱动模块。
dtbs 生成配置文件。
**modules:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules**
说明:
$:美元符号是引用变量定义值;
$(MAKE) : 指make命令;
-C: 指内核位置。
M:指定模块源码目录,M编译的会生成*.ko; 后期可以通过inmod *ko 安装
//64bit 的
sudo apt install crossbuild-essential-arm64
https://github.com/raspberrypi/linux
//通过 find . -name *_defconfig,板子配套的_defconfig,这里是bcm2711_defconfig
make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- KERNEL=kernel8 bcm2711_defconfig
make -j4 ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- KERNEL=kernel8 Image modules dtbs
mkdir /home/hbwang/pi/data1 //fat32分区 boot、img等
mkdir /home/hbwang/pi/data2 //ext4 分区 rootfs、modules等
sudo mount /dev/sdb1 /home/hbwang/pi/data1
sudo mount /dev/sdb2 /home/hbwang/pi/data2
./scripts/mkknlimg arch/arm64/boot/zImage ./kernel8.img
sudo make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- KERNEL=kernel8 INSTALL_MOD_PATH=/home/hbwang/pi/data2 modules_install
sudo cp arch/arm64/boot/Image /home/hbwang/pi/data1/kernel8.img
sudo cp arch/arm64/boot/dts/broadcom/*.dtb /home/hbwang/pi/data1
sudo cp arch/arm64/boot/dts/overlays/.*dtb* /home/hbwang/pi/data1/overlays/
sudo cp arch/arm64/boot/dts/overlays/README /home/hbwang/pi/data1/overlays/
sudo umount /home/hbwang/pi/data1
sudo umount /home/hbwang/pi/data2
通过终端查看设备是否启动成功。
4G模块ping ppp0不能上网需要增加默认路由
sudo route add default dev ppp0
sudo route add default gw 10.64.64.64
使用4g 模块的usb和树莓派usb口连接,而不是使用4g模块的uart 排线连接
sudo apt-get install wvdial
lsusb
sudo modprobe option
//ec200u
sudo sh -c 'echo "2c7c 0901" > /sys/bus/usb-serial/drivers/option1/new_id'
//ec20
sudo sh -c 'echo "2c7c 0125" > /sys/bus/usb-serial/drivers/option1/new_id'
q \r\n
原理:树莓派是自带option驱动的,向sys/bus/usb-serial/drivers/option1/new_id这个文件添加 VID 和 PID 信息后,Linux 会在/dev 目录下创建多个名称如 ttyUSB0-6的串口设备文件
sudo vim /etc/wvdial.conf [Dialer lan1] Init1 = ATZ Init2 = ATQ0 V1 E1 S0=0 使用IPV4,建立连接,联通为3gnet,移动为cmnet Init3 = AT+CGDCONT=1,"IP","3gnet" Modem Type = Analog Modem Baud = 115200 New PPPD = yes Modem = /dev/ttyUSB0 ISDN = 0 # 拨号,*99#是联通的拨号号码,*98*1#是移动 Phone = *98*1# Password = card Username = card Auto DNS = on
sudo wvdial lan1
sudo route add default dev ppp0
AT+QCFG=“usbnet”,1 \r\n
ping www.baidu.com -I ppp0
可参考以下博文
https://blog.csdn.net/weixin_45880057/article/details/125747029,感谢博主分享。
工作指示灯如下表所示:
LED2 电源指示灯 正常供电亮红色
LED1 模块状态指示灯 模块正常亮绿灯
LED3 网络指示灯 慢闪(200ms 高/1800ms 低) 找网状态
慢闪(1800ms 高/200ms 低) 待机状态
快闪(125ms 高/125ms 低) 数据传输模式
高电平 通话中
配置usb
AT+QCFG=“usbnet”,1
重启
AT+CFUN=1,1
查询配置成功
AT+QCFG=“usbnet”
AT+CGDCONT=1,"IPV4V6","3gnet"
AT+CGDCONT=1,"IP","ctnet"
发短信:
AT+CMGF=1 //设置短消息模式为文本模式。
OK
AT+CSCS=“GSM” //设置 TE 输入字符集格式为 GSM 格式。
OK
AT+CMGS=“电话号码”
This is a test from Quectel //输入短消息内容,Ctrl+Z 发送,ESC 退出发送。
+CMGS: 247
OK
打电话:
ATD10086; //拨号。
ATD 电话号码
OK
AT+CHUP //挂断通话。
OK
AT+CGPADDR显示PDP地址
AT+CGPADDR
+CGPADDR: 1,“100.30.3.158”
+CGPADDR: 2,“0.0.0.0,0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0”
OK
AT+CGPAD
ERROR
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。