广和通 FG160 5G 模块与转接板

FG160 模块的基本信息、使用、AT指令、转m2-bkey、转网口

免责声明

一切后果读者自负!一切后果读者自负!一切后果读者自负!

文章部分由 AI 生成,其余内容只是本文作者单纯搬运、抄袭、仿制网络上其他人所述内容,请自行辨析,后果自负。

广和通 FGxxx 系列模块不属于最终产品,个人拿到的二手/余料模块可能有各种问题、缺陷,没有技术文档支持。个人玩家应注意使用安全,不应尝试进行关键射频参数调整等可能扰乱公共通信系统的行为。本文章作者仅使用网上可获得的部分公开资料,对模块进行了简单功能性测试,未完成驻网。由于网络资料的不准确性等缘故,本文章所述方法可能不适用,甚至对模块、人体等造成危害,读者应仔细鉴别,风险自负。一切模块相关的使用方法,认证,合规性问题,以广和通官方人员、文档、声明为准。

一切后果读者自负!一切后果读者自负!一切后果读者自负!

模块简介

广和通 FG160-EAU 官网上图片还配错了

FG360-EAU-0x 频段齐全,NA 则缺失 n1 和 n79 频段。模块所使用 LGA 封装与 移远520 封装外形基本一致,有效引脚定义较少,大部分是保留引脚,无法确定是否能够执行对应功能。

使用转接板转接成 m2-bkey 之后,可以视作 FM160 使用。

工作模式

FG160 有多个工作模式,使用 AT+GTUSBMODE=<mode number> 进行切换,默认出厂状态应该是 32。

编号 工作模式
17 Diag + Modem + AT + Pipe + RMNET + ADB
18 Diag + Modem + AT + Pipe + ECM + ADB
20 Modem
21 Modem + AT
22 Modem + AT + RMNET
23 Modem + AT + ECM
24 RNDIS + Modem + Diag + ADB
28 MBIM
29 MBIM + AT + Diag
30 MBIM + Modem + Diag + AT
31 Diag + Modem + RMNET + DPL + QDSS + ADB (QCOM reserved for internal debug)
32 Diag + Modem + AT + Pipe + RMNET
33 Diag + Modem + AT + Pipe + ECM
34 Modem + AT + Pipe + RMNET
35 Modem + AT + Pipe + ECM

常用模式为 17/18/24/32,其它模式未做测试。如果使用 PCIe 转网口,同时使用 USB 的 RNDIS,应配置为 24。若使用 MIBM 模式,可能需要额外的硬件配置使模块 PCIe 接口工作在 EP(End Point) 模式。

AT拨号

先安装所需驱动和文档(较老旧),可以参考此处:Waveshare 5G M.2 TO Gigabit ETH

FG160 原生固件带有自动拨号功能,实测四网普卡无需额外操作。自动拨号开关使用如下指令:

AT+GTAUTOCONNECT=1

如不能自动拨号,也可以使用 AT 指令控制拨号:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
查看当前模式
AT+GTUSBMODE?

插卡
AT+CPIN?
AT+CPIN="<pin>"

如果是 ECM/RNDIS 模式
    查询拨号信息
    AT+GTRNDIS?

    查看承载 CID
    AT+CGDCONT?

    拨号
    AT+GTRNDIS=1,<CID>

如果是 RMNET 模式
    查询拨号信息
    AT$QCRMCALL?

    拨号
    AT$QCRMCALL=1,1

    如果要 IPV4V6 拨号
    AT$QCRMCALL=1,1,3

    如果选择不同的 CID 拨号
    AT$QCRMCALL=(action)1,(instance)1,(IP type)3,(3GPP)2,cid(4)

转m2/网口

m2-bkey

模块可使用转接板转换成 m2-bkey 使用,由于其中有早就被割的四分五裂的走线阻抗匹配,请使用 嘉立创 0.8mm 3313 层压结构。

蓝奏云分享链接 密码:h4h8

Gerber渲染图

推荐使用无铅中温/低温锡膏,配合加热台完成焊接,无需专用 bga 焊台。

如使用 NA,EAU-00/01/02/31,只需使用2/4/6/8四个天线座,EAU-10/11则需1-8全部使用

如使用转网口板,无需焊接任何背面元件;如作为 EP 模块,可能需要正确的 config 引脚电平配置。

转网口

m2-bkey 转网口推荐采用 rtl8125 的底板,注意模块空间尺寸,需要可以放置较宽模块的空间。

转网口

Web UI

FG160 系列原装固件理论上有预制的 Web Ui,默认 192.168.1.1 连接时可访问,默认密码 12345678,工程余料可能固件被更改,未找到访问方式。

备份/刷回备份

模块没有官方的固件备份方式,但可以通过 ADB 读写快数据实现

准备

首先连接 ADB 查看当前分区状态

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
adb root

adb shell

/ $ cat /proc/mtd
dev:    size   erasesize  name
mtd0: 00280000 00040000 "sbl"
mtd1: 00280000 00040000 "mibib"
mtd2: 00b00000 00040000 "efs2"
mtd3: 001c0000 00040000 "tz"
mtd4: 00100000 00040000 "tz_devcfg"
mtd5: 00180000 00040000 "ddr"
mtd6: 00100000 00040000 "apdp"
mtd7: 00100000 00040000 "xbl_config"
mtd8: 00100000 00040000 "xbl_ramdump"
mtd9: 00100000 00040000 "multi_image"
mtd10: 00100000 00040000 "multi_image_qti"
mtd11: 00100000 00040000 "aop"
mtd12: 00100000 00040000 "qhee"
mtd13: 00100000 00040000 "abl"
mtd14: 00380000 00040000 "uefi"
mtd15: 00180000 00040000 "toolsfv"
mtd16: 00180000 00040000 "loader_sti"
mtd17: 01300000 00040000 "boot"
mtd18: 00100000 00040000 "scrub"
mtd19: 00100000 00040000 "logfs"
mtd20: 06b40000 00040000 "modem"
mtd21: 001c0000 00040000 "misc"
mtd22: 00180000 00040000 "devinfo"
mtd23: 01300000 00040000 "recovery"
mtd24: 001c0000 00040000 "fota"
mtd25: 03000000 00040000 "recoveryfs"
mtd26: 00100000 00040000 "sec"
mtd27: 00100000 00040000 "ipa_fw"
mtd28: 00100000 00040000 "usb_qti"
mtd29: 06a00000 00040000 "system"
mtd30: 00500000 00040000 "efs2bak"
mtd31: 00b00000 00040000 "fibonv"
mtd32: 00b00000 00040000 "fibonvbak"
mtd33: 00240000 00040000 "oeminfo"
mtd34: 00240000 00040000 "oemconfig"
mtd35: 00480000 00040000 "rfnvbak"
mtd36: 00b00000 00040000 "custconfig"
mtd37: 01100000 00040000 "systemdata"
mtd38: 06800000 00040000 "userdata"

以 modem 分区为例,其完整路径是 /dev/mtd20

由于分区完整大小较大,无法在模块本地缓存。需准备一个接受 nc 连接的主机,以便收发备份的分区,此处以 WSL 为例

备份

在模块 ADB Shell 中执行读取命令,用 nc 监听 1234 端口的连接等待传出

1
2
3
4
/ $ dd if=/dev/mtd20 bs=4M | nc -l -p 1234
26+1 records in
26+1 records out
112459776 bytes (107.3MB) copied, 23.415508 seconds, 4.6MB/s

在 WSL 中执行 nc 命令接收数据流

1
ubuntu@ubuntu:~$ nc 192.168.1.1 1234 > NON-HLOS.bin

命令可能无法自动退出,当出现传输报告时 112459776 bytes (107.3MB) copied, 23.415508 seconds, 4.6MB/s 即可退出

检查镜像大小,112459776 完全符合 0x06b40000,备份完成

1
2
ubuntu@ubuntu:~$ ls -l NON-HLOS.bin
-rw-r--r-- 1 ubuntu ubuntu 112459776 Oct 1 15:25 NON-HLOS.bin

建议进行备份完整性校验

1
2
3
4
5
/ $ sha256sum /dev/mtd20
b56ebc71291226d4eec8f2361398b34baaa990ef9bdbff1be42a7a33970c2eaa  /dev/mtd20

ubuntu@ubuntu:~$ sha256sum NON-HLOS.bin
b56ebc71291226d4eec8f2361398b34baaa990ef9bdbff1be42a7a33970c2eaa  NON-HLOS.bin

刷回

警告:不建议对 boot 等关键分区进行更新,如果擦除后未完成写入,模块可能永久性变砖!!!

先擦除对应分区

1
2
/ $ flash_erase /dev/mtd20 0 0
Erasing 256 Kibyte @ 6b00000 -- 100 % complete

模块 ADB Shell 接收数据流并写入对应分区

1
2
3
4
5
6
7
8
/ $ nc -l -p 1234 | nandwrite -p /dev/mtd20 -
Writing data to block 0 at offset 0x0
Writing data to block 1 at offset 0x40000
Writing data to block 2 at offset 0x80000
Writing data to block 3 at offset 0xc0000
...
Writing data to block 427 at offset 0x6ac0000
Writing data to block 428 at offset 0x6b00000

WSL 向模块写入数据流

1
2
ubuntu@ubuntu:~$ pv NON-HLOS.bin | nc 192.168.1.1 1234
 107MiB 0:00:24 [4.38MiB/s] [========================================================================>] 100%

命令可能无法自动退出,当出现 100% 传输,ADB Shell 显示达到对应 offset 时,可以手动终止

建议进行写入完整性校验

1
2
3
4
5
/ $ sha256sum /dev/mtd20
b56ebc71291226d4eec8f2361398b34baaa990ef9bdbff1be42a7a33970c2eaa  /dev/mtd20

ubuntu@ubuntu:~$ sha256sum NON-HLOS.bin
b56ebc71291226d4eec8f2361398b34baaa990ef9bdbff1be42a7a33970c2eaa  NON-HLOS.bin

完成刷入后,确认写入无误,可重启模块

1
/ $ sys_reboot

重启后,执行功能检查

其它

本模块还有较多功能,但在从末端用户角度均无法更改。

Licensed under CC BY-NC-ND 4.0 (署名-非商业性使用-禁止演绎)
使用 Hugo 构建
主题 Stack 由 Jimmy 设计