编译环境 Linux
ubuntu 22.04 lts
ubuntu安装过程和windows没啥区别。本人喜欢直接把系统安装在单独的硬盘,这样避免引导文件误删出错。至于直接安装而不选择虚拟机则是为了发挥本人洋垃圾电脑的全部性能。
网络环境 全程科学上网
安装依赖
sudo apt update -y
sudo apt full-upgrade -y
sudo apt install -y ack antlr3 asciidoc autoconf automake autopoint binutils bison build-essential \bzip2 ccache cmake cpio curl device-tree-compiler fastjar flex gawk gettext gcc-multilib g++-multilib \git gperf haveged help2man intltool libc6-dev-i386 libelf-dev libfuse-dev libglib2.0-dev libgmp3-dev \libltdl-dev libmpc-dev libmpfr-dev libncurses5-dev libncursesw5-dev libpython3-dev libreadline-dev \libssl-dev libtool lrzsz mkisofs msmtp ninja-build p7zip p7zip-full patch pkgconf python2.7 python3 \python3-pyelftools python3-setuptools qemu-utils rsync scons squashfs-tools subversion swig texinfo \uglifyjs upx-ucl unzip vim wget xmlto xxd zlib1g-dev
克隆源代码,以lean大佬的为例
git clone https://github.com/coolsnowwolf/lede
cd lede
git pull
./scripts/feeds update -a
./scripts/feeds install -a
make menuconfig
进入图形界面
上下方向键选择子项目 左右方向键对应下方Exit Save Load
回车键进入选项 空格键可以选择选项 单击空格出现M标志 代表以Mod形式编译 编译完的可执行文件不加入内核 双击空格出现*标志 表示将该文件编译进内核 但是固件包会变大 我这边所需要的 一律选择了* 需要取消的话 按空格到未选中状态即可
连按2次ESC返回上级目录
Target System 目标系统
Subtarget 硬件
Target Profile 路由器型号
Target Images 目标镜像的设置,在里面设置rom 和ram
预编译
在图形界面设置好一些基本配置
下载dl库
Make download -j8
全线程编译
make V=s -j$(nproc)
编译成功后在/bin/targets下可见编译好的固件
正式编译
先把一些必备的选上
Base System -- > dns masq-full 子选项全部勾选 有些插件会依赖这个组件
Extra packages 勾选上ipv6 helper 以支持IPV6
回主页 在Network Firewall ip6tables下选择ip6tables-extra和ip6tables-mod-nat选项
在Network勾选odhcp6c和odhcpd-ipv6only
继续回主页 选择LuCI 再选Collections 把Luci选上
返回上页 打开Modules 选择Luci-compat勾选上
返回上页 在Protocols选择luci-proto-ipv6和luci-proto-ppp
返回上页 在Translations选择语言 默认简体中文可不用修改
返回上页 接着在Applications选择自己需要的插件,如果里面没有想要的可以git下载到文件夹下并填写路径
然后在Kernel modules --- Network Devices中可以选择需要的有线网卡驱动
Kernel modules --- Wireless Devices中可以选择需要的无线网卡驱动
5g模块相关
由于fm150-ae-11只能走usb,所以usb相关的驱动必不可少。
Kernel modules --- USB Support选上拨号相关的支持,如ecm,ncm,mbim,rndis等。如果需要at命令相关的还要选上kmod-usb-serial相关的,反正驱动多选就完事了(闪存,内存足够的情况下)
Kernel modules --- WWan Support 直接全部选上,这里lean大已经把广和通模块相关的id都写好,非常方便
保存后再次编译,到此软件相关的已完成。
路由器设置(以mbim为例)
路由器刷好编译的openwrt后在
网络-->接口 添加接口wwan,协议选择mbim,apn填写运营商对应的,如电信ctnet。调制器默认即可。认证类型选择both,保存即可,有数据即拨号成功
供电相关,碎碎念
我觉得这个广和通5g模块最坑的是供电相关的问题,经手两个模块fm650-cn 03和fm150-ae-11供电要求都比较高。官方文档中要求3.8v 3a左右,而fm650则更离谱,4a...
买了微雪电子的转接卡m.2转usb3.1https://www.waveshare.net/shop/USB-TO-M.2-B-KEY.htm,usb供电远远不够这些电老虎!!!!!
在淘宝和咸鱼上就发现几款带dc供电的转接卡
第一款,微雪电子https://www.waveshare.net/shop/5G-M.2-TO-Gigabit-ETH.htm要199!太贵了,我不买。
第二款是淘宝店家“通信模块资源整合商” m.2转usb3带dc供电 ,这个个人应该也还行,但它要运费。但我不买这个是因为我在咸鱼上看到一个稍稍高配一点的
第三款,咸鱼卖家制作 这个老哥对这些5g模块是很了解的,所以我选择相信他,等到货后再上机试试
2024.4.8
到货了到货了,接上模块后使用12v 1的dc电源后连接电脑测速仍会重启 接上12v 2a后偶尔还是会重启。
而后接上路由器的usb口测试,下载了几十g流量也没出现重启的现象。这就很奇怪,可能是电脑主板供电与转接板有冲突,个人无相关知识储备,无法考究。后续测试中发现转接板在使用时拔掉与电脑的连接会导致电脑死机,先给转接板断电就不会。当然,模块已经能正常接上路由器使用,也就没继续考究,当然,也不知道怎么下手。
至此,fm150-ae-11在路由器上使用的记录完结