20250510解决NanoPi NEO core开发板在Ubuntu core22.04.3系统下适配移远的4G模块EC200A-CN的问题
1、h3-eflasher-friendlycore-jammy-4.14-armhf-20250402.img.gz 在WIN10下使用7-ZIP解压缩/ubuntu20.04下使用tar
2、Win32DiskImager.exe 写如32GB的TF卡。【以管理员身份运行】
3、TF卡如果已经做过会有3个磁盘分区,可以使用SD Card Formatter/SDCardFormatterv5_WinEN.zip格式化TF卡。DiskGenius可以尝试。
4、替换掉:zImage和boot.img。
5、给底板插网线,
apt install busybox
【可选】
apt install udhcpc
6、如果还是不行,就去ubunt core20.04【可选ubuntu core16.04.2】拿default.script并放到同样的位置【目录可能需要新建!^_】即可。
/usr/share/udhcpc/default.script
/etc/udhcpc/default.script
需要补全的软件:
sudo apt-get update
apt install busybox
【可选】
apt install udhcpc
apt-get install usbutils
apt-get install util-linux
apt install openssh-server
apt install samba
网速查看
rootroot@ubuntu:~$ sudo apt-get install iftop
【不需要root权限】
rootroot@ubuntu:~$ sudo apt-get install nload
rootroot@ubuntu:~$ sudo apt-get install vnstat
【失败】
rootroot@ubuntu:~$ sudo apt-get install speedtest-cli
rootroot@ubuntu:~$ sudo apt-get install nethogs
20250510解决NanoPi NEO core开发板在Ubuntu core22.04.3系统下适配移远的4G模块EC200A-CN的问题
2025/5/10 12:01
缘起:在NanoPi NEO core开发板上,使用ubuntu core16.04.2调通了 移远的4G模块EC200A-CN。h3-eflasher-friendlycore-xenial-4.14-armhf-20210618.img.gz
ubunt core20.04上也通了。h3-eflasher-friendlycore-focal-4.14-armhf-20250402.img.gz
最新的h3-eflasher-friendlycore-jammy-4.14-armhf-20250402.img就异常了。h3-eflasher-friendlycore-jammy-4.14-armhf-20250402.img.gz
Y:\BaiduNetdiskDownload\20250423的FriendlyElec-H3\01_系统固件\02_SD卡刷机固件(SD-to-eMMC)
由于是去年做好的/调通的。今天再搞的时候,发现 Ubuntu core22.04.3系统 异常的时候,就搞得自己都差点怀疑人生了!
不是同样的搞法吗?
使用 Win32DiskImager.exe 写入32GB的卡固件:h3-eflasher-friendlycore-jammy-4.14-armhf-20250402.img
然后替换掉zImage和boot.img。
保险起见,还可以替换掉dtb。当然适配 移远的4G模块EC200A-CN 只改动了driver,没有涉及到DTS。
查档之后,还是决定先回滚/回退到ubuntu core16.04.2上再次调通了/复现了。
然后ubunt core20.04上也通了。
最后发现Ubuntu core22.04.3系统确实异常了。
1、打包BOOT.IMG的时候。必须使用 TF卡启动的BOOT分区才可以?
2、ubuntu16.04可以通过EC200A-CN上网,到了ubuntu core 22.04.2就不能上网了?拿不到IP地址。可能是啥原因?
据悉,友善之臂【陈工】只在ubuntu core16.04.2上调通过移远的4G模块EC20。
在Ubuntu core22.04.3上接以太网是可以上网的。
然后比对LOG:
正常:【ubunt core20.04】
[05-09_08:45:24:147] AT> AT+QNETDEVCTL?
[05-09_08:45:24:149] AT< +QNETDEVCTL: 1,1,1,1
[05-09_08:45:24:149] AT< OK
[05-09_08:45:24:149] AT> AT+CGACT?
[05-09_08:45:24:152] AT< +CGACT: 1,1
[05-09_08:45:24:152] AT< +CGACT: 8,1
[05-09_08:45:24:152] AT< +CGACT: 9,0
[05-09_08:45:24:152] AT< +CGACT: 10,0
[05-09_08:45:24:152] AT< +CGACT: 11,0
[05-09_08:45:24:152] AT< OK
[05-09_08:45:24:153] ip link set dev usb0 up
[05-09_08:45:24:186] busybox udhcpc -f -n -q -t 5 -i usb0
udhcpc: started, v1.30.1
udhcpc: sending discover
udhcpc: sending select for 10.79.167.99
udhcpc: lease of 10.79.167.99 obtained, lease time 86400
[05-09_08:45:24:454] AT> at+cops?
[05-09_08:45:24:455] AT< +COPS: 0,2,"46001",7
[05-09_08:45:24:456] AT< OK
[05-09_08:45:24:456] AT> at+qeng="servingcell"
[05-09_08:45:24:460] AT< +QENG: "servingcell","NOCONN","LTE","FDD",460,01,D094A17,464,100,1,5,5,253E,-71,-9,-61,24,0
[05-09_08:45:24:460] AT< OK
[05-09_08:45:24:461] AT> AT+QNETDEVCTL?
[05-09_08:45:24:462] AT< +QNETDEVCTL: 1,1,1,1
[05-09_08:45:24:462] AT< OK
[05-09_08:45:24:463] AT> AT+CGACT?
[05-09_08:45:24:465] AT< +CGACT: 1,1
[05-09_08:45:24:465] AT< +CGACT: 8,1
[05-09_08:45:24:465] AT< +CGACT: 9,0
[05-09_08:45:24:465] AT< +CGACT: 10,0
[05-09_08:45:24:465] AT< +CGACT: 11,0
异常:【Ubuntu core22.04.3】
[05-09_09:22:38:323] AT> AT+QNETDEVCTL?
[05-09_09:22:38:325] AT< +QNETDEVCTL: 1,1,1,1
[05-09_09:22:38:325] AT< OK
[05-09_09:22:38:325] AT> AT+CGACT?
[05-09_09:22:38:328] AT< +CGACT: 1,1
[05-09_09:22:38:328] AT< +CGACT: 8,1
[05-09_09:22:38:328] AT< +CGACT: 9,0
[05-09_09:22:38:328] AT< +CGACT: 10,0
[05-09_09:22:38:328] AT< +CGACT: 11,0
[05-09_09:22:38:328] AT< OK
[05-09_09:22:38:329] ip link set dev usb0 up
[05-09_09:22:38:360] No default.script found, it should be in '/usr/share/udhcpc/' or '/etc//udhcpc' depend on your udhcpc version!
[05-09_09:22:38:361] busybox udhcpc -f -n -q -t 5 -i usb0
sh: 1: busybox: not found
[05-09_09:22:38:368] ERROR: IP from udhcpc (0.0.0.0) is different to IP from ATC (10.162.227.158)!
[05-09_09:22:38:368] AT> at+cops?
[05-09_09:22:38:370] AT< +COPS: 0,2,"46001",7
[05-09_09:22:38:370] AT< OK
[05-09_09:22:38:370] AT> at+qeng="servingcell"
[05-09_09:22:38:375] AT< +QENG: "servingcell","NOCONN","LTE","FDD",460,01,D094A17,464,100,1,5,5,253E,-72,-8,-60,20,0
[05-09_09:22:38:375] AT< OK
[05-09_09:22:38:375] AT> AT+QNETDEVCTL?
[05-09_09:22:38:377] AT< +QNETDEVCTL: 1,1,1,1
[05-09_09:22:38:377] AT< OK
[05-09_09:22:38:377] AT> AT+CGACT?
[05-09_09:22:38:380] AT< +CGACT: 1,1
[05-09_09:22:38:380] AT< +CGACT: 8,1
[05-09_09:22:38:380] AT< +CGACT: 9,0
[05-09_09:22:38:380] AT< +CGACT: 10,0
[05-09_09:22:38:380] AT< +CGACT: 11,0
很明显可以看到,在 Ubuntu core22.04.3下,移远的4G模块EC200A-CN 是可以拿到公网IP地址:ATC (10.162.227.158)!
但是H3因为没有 default.script 这个配置文件,导致异常了。
并且Ubuntu core22.04.3下没有udhcpc这个命令。
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/# udhcpc
bash: udhcpc: command not found
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/# ./quectel-CM &
quectel-CM这个拨号程序在找不到udhcpc的时候,会自动去找busybox udhcpc。
不好意思,也没有busybox了。
busybox udhcpc -f -n -q -t 5 -i usb0
那就直接出错了。
解决思路:【缺啥补啥】
1、缺少文件:
/usr/share/udhcpc/default.script
/etc/udhcpc/default.script
既然缺少这两个default.script,并且ubunt core20.04【可选ubuntu core16.04.2】可以 移远的4G模块EC200A-CN 上网。
给底板插网线,通过WinSCP去 ubunt core20.04的系统去把这两个文件拿/取出来备用。
当然插TF卡/U盘都可以的。你怎么方便怎么来。
2、没有busybox。
apt install busybox
【可选】
apt install udhcpc
root@NanoPi-NEO-Core:/# busybox udhcpc
udhcpc: started, v1.30.1
udhcpc: sending discover
udhcpc: sending discover
udhcpc: sending discover
udhcpc: sending discover
【在安装udhcpc的时候会告诉你是否修改/配置/替换掉现有的default.script】
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/# apt install udhcpc
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following NEW packages will be installed:
udhcpc
0 upgraded, 1 newly installed, 0 to remove and 152 not upgraded.
Need to get 2742 B of archives.
After this operation, 51.2 kB of additional disk space will be used.
Get:1 http://ports.ubuntu.com jammy-security/universe armhf udhcpc armhf 1:1.30.1-7ubuntu3.1 [2742 B]
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/#
root@NanoPi-NEO-Core:/# apt install busybox
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
The following packages will be upgraded:
busybox
1 upgraded, 0 newly installed, 0 to remove and 151 not upgraded.
Need to get 436 kB of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 http://ports.ubuntu.com jammy-security/universe armhf busybox armhf 1:1.30.1-7ubuntu3.1 [436 kB]
Fetched 436 kB in 3s (164 kB/s)
(Reading database ... 34569 files and directories currently installed.)
Preparing to unpack .../busybox_1%3a1.30.1-7ubuntu3.1_armhf.deb ...
Unpacking busybox (1:1.30.1-7ubuntu3.1) over (1:1.30.1-7ubuntu3) ...
Setting up busybox (1:1.30.1-7ubuntu3.1) ...
root@NanoPi-NEO-Core:/#
实测网速:200-400-800跳动比较大。可能与 实时网络情况:联通/友善之臂的服务器。
或者 Ubuntu core22.04.3系统里面其他的配置文件/系统优化有关。^_
time(wget http://112.124.9.243/dvdfiles/h3/images-for-eflasher/friendlycore-jammy-images.tgz)
friendlycore-ja 99%[==================> ] 561.68M 824KB/s eta 1s [05-09_01:44:53:893] AT> at+cops?
real 11m38.551s
-rw-r--r-- 1 root root 590093020 Apr 2 07:23 friendlycore-jammy-images.tgz
【实测网速:4G网速 不到1MBps,也就是 下载10Mbps。这个速度 对于EC200A-CN正常吗?】