# rm520u **Repository Path**: radiumgitee/rm520u ## Basic Information - **Project Name**: rm520u - **Description**: quectel rm520u - **Primary Language**: C - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-26 - **Last Updated**: 2026-01-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # rm520u ## 介绍 quectel rm520u ## 软件架构 - applications: 应用服务 - drviers: 驱动程序 ## 驱动 ### 驱动修改 - [x] modem_poweron_off函数修复增加 gpiod_set_value控制函数 - [x] 剔除probe函数中gpiod_set_value_cansleep函数,只保留方向设置,并增加power方向设置 ### 设备树 ```dts rm500u_5g_modem: rm500u-modem { compatible = "4g-modem-platdata"; pinctrl-names = "default"; pinctrl-0 = <&rm500u_ctrl>; 4G,reset-gpio = <&gpio0 RK_PC6 GPIO_ACTIVE_LOW>; 4G,power-gpio = <&gpio1 RK_PA2 GPIO_ACTIVE_HIGH>; status = "okay"; }; &pinctrl { rm520u { rm500u_ctrl: rm500u_ctrl { rockchip,pins = <0 RK_PC6 RK_FUNC_GPIO &pcfg_pull_down>, //reset,根据自己的物理引脚修改啊 <1 RK_PA2 RK_FUNC_GPIO &pcfg_pull_up>; //power,根据自己的物理引脚修改啊 }; }; }; ``` ## 应用软件 这个是由官方提供的,但官方只有23年更新的[v1.6.7](https://github.com/quectel-open-source/Quectel_QConnectManager_Linux)使用这个版本报错:版本不兼容问题 请使用v1.6.4 ### 编译 ```bash make ``` ### 自动服务 1. 创建 `touch quectel-rm520.service` 2. 内容如下: ```bash # /etc/systemd/system/quectel-rm520.service [Unit] Description=Quectel-CM 5G Modem Service After=network.target Wants=network.target [Service] Type=forking # 请根据实际路径修改以下参数 ExecStart=/usr/local/bin/quectel-CM -n 1 -s cmnet -v -f /var/log/quectel-rm520.log ExecStop=/bin/kill -s TERM $MAINPID Restart=on-failure RestartSec=5s User=root Group=root StandardOutput=syslog StandardError=syslog SyslogIdentifier=quectel_service [Install] WantedBy=multi-user.target ``` 3. `sudo chmod 644 /etc/systemd/system/quectel-rm520.service` 4. `sudo cp quectel-rm520.service /etc/systemd/system/` 5. 重新载入systemd配置 `sudo systemctl daemon-reload` 6. 使能自启动服务:`sudo systemctl enable quectel-rm520.service` 7. 启动服务: `sudo systemctl start quectel-rm520.service` 8. 查看服务信息 ```bash # 查看服务状态 systemctl status quectel-rm520.service -l # 查看实时日志 journalctl -u quectel-rm520.service -f # 测试自动重启 killall quectel-CM journalctl -u quectel-rm520.service --since "1 minute ago" ``` ## 其他命令 引脚计算方法: ```text ROC-RK3588S-PC 有 5 组 GPIO bank:GPIO0~GPIO4,每组又以 A0~A7, B0~B7, C0~C7, D0~D7 作为编号区分,常用以下公式计算引脚: GPIO pin脚计算公式:pin = bank * 32 + number GPIO 小组编号计算公式:number = group * 8 + X ``` 查看控制引脚状态 ```bash # sudo cat /sys/kernel/debug/gpio # gpio-22 ( |4G,reset ) out hi ACTIVE LOW # gpio-34 ( |4G,power ) out hi # 或者 sudo cat /sys/kernel/debug/pinctrl/pinctrl-rockchip-pinctrl/pinconf-pins ``` ## github flow命令 ### feature 新功能开发分支 ```bash # 1.1 从 master 创建功能分支 git checkout master git pull origin master git checkout -b feature/add-xxx-function # 1.2 在功能分支开发并提交 git add . git commit -m "feat: add xxx function link #issue_ident" # 1.3 推送功能分支到远程 git push -u origin feature/add-xxx-function # 1.4 同步 master 最新代码到功能分支 git checkout feature/add-xxx-function git fetch origin git rebase origin/master # 1.5 合并功能分支到 master git checkout master git pull origin master git merge --no-ff feature/add-xxx-function git push origin master # 1.6 删除功能分支 git branch -d feature/add-xxx-function git push origin --delete feature/add-xxx-function ``` ### hotfix 紧急修复分支 ```bash # 2.1 从 master 创建 hotfix 分支 git checkout master git pull origin master git checkout -b hotfix/fix-critical-bug # 2.2 修复并提交 git add . git commit -m "fix: 修复严重bug xxx link #issue_ident" # 2.3 推送 hotfix 分支到远程 git push -u origin hotfix/fix-critical-bug # 2.4 合并 hotfix 分支到 master git checkout master git pull origin master git merge --no-ff hotfix/fix-critical-bug git push origin master # 2.5 打 hotfix 版本标签 git tag -a v1.0.1 -m "修复严重bug" git push origin v1.0.1 # 2.6 删除 hotfix 分支 git branch -d hotfix/fix-critical-bug git push origin --delete hotfix/fix-critical-bug ``` ### tag 标签 ```bash # 3.1 创建带注释的标签 git checkout master git tag -a v1.0.0 -m "发布v1.0.0版本,包含xxx功能" # 3.2 推送指定标签到远程 git push origin v1.0.0 # 3.3 推送所有标签到远程 git push origin --tags # 3.4 删除本地标签 git tag -d v1.0.0 # 3.5 删除远程标签 git push origin --delete v1.0.0 # 3.6 查看所有标签 git tag # 3.7 查看标签详情 git show v1.0.0 ``` ## 软件支持 - [x] 支持 RM520 ## 感谢 感谢[quectel-open-source](https://github.com/quectel-open-source/Quectel_QConnectManager_Linux)提供的应用源码