update readme

This commit is contained in:
fujr 2025-04-24 21:35:31 +08:00
parent c4ebb71bc7
commit fca06a247b
2 changed files with 67 additions and 56 deletions

View File

@ -1,10 +1,14 @@
# QModem # QModem
[![Auto compile with OpenWrt SDK](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml/badge.svg)](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml)
QModem is a module management plugin compatible with OpenWRT version 21 and later. Developed in Lua, it is compatible with QWRT/LEDE/Immortalwrt/OpenWRT. QModem is a module management plugin compatible with OpenWRT version 21 and later. Developed in Lua, it is compatible with QWRT/LEDE/Immortalwrt/OpenWRT.
(For js luci, please add the luci-compat package.) (For js luci, please add the luci-compat package.)
[TOC] [Support List](./docs/support_list.md)
[toc]
# Quick Start # Quick Start
@ -14,15 +18,15 @@ To use QModem, you first need to add a feed source in OpenWRT:
```shell ```shell
echo >> feeds.conf.default echo >> feeds.conf.default
echo 'src-git modem https://github.com/FUjr/modem_feeds.git;main' >> feeds.conf.default echo 'src-git modem https://github.com/FUjr/QModem.git;main' >> feeds.conf.default
./scripts/feeds update modem ./scripts/feeds update qmodem
./scripts/feeds install -a -p modem ./scripts/feeds install -a -p qmodem
``` ```
Force update library drivers (use this library's drivers): Force update library drivers (use this library's drivers):
```shell ```shell
./scripts/feeds install -a -f -p modem ./scripts/feeds install -a -f -p qmodem
``` ```
## Integrate Packages ## Integrate Packages
@ -37,18 +41,19 @@ make menuconfig
In the configuration menu, you can select the following packages (all under Luci/Application): In the configuration menu, you can select the following packages (all under Luci/Application):
| Package Name | Functionality |
| ------------------------------------- | :---------------------------------------: | | Package Name | Functionality |
| **luci-app-qmodem** | Provides module info, dialing settings, and advanced settings. Other features depend on this main program (backend included here). | | ------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------: |
| **Add Lua Luci Homepage** | Adds Lua Luci homepage. If using luci2 (Js Luci) and selected, there will be two homepages. | | **luci-app-qmodem** | Provides module info, dialing settings, and advanced settings. Other features depend on this main program (backend included here). |
| **QMI Driver Selection** | Choose between Generic QMI driver or Vendor QMI driver. | | **Add Lua Luci Homepage** | Adds Lua Luci homepage. If using luci2 (Js Luci) and selected, there will be two homepages. |
| **QMI Driver Selection** | Choose between Generic QMI driver or Vendor QMI driver. |
| **Quectel Connect Manager Selection** | Choose one of:<br>- Tom customized Quectel CM: With options to block default route addition and resolv.conf modification<br>- QWRT quectel-CM-5G: Uses QWRT's quectel-CM-5G<br>- NORMAL quectel-cm: Uses the standard quectel-cm | | **Quectel Connect Manager Selection** | Choose one of:<br>- Tom customized Quectel CM: With options to block default route addition and resolv.conf modification<br>- QWRT quectel-CM-5G: Uses QWRT's quectel-CM-5G<br>- NORMAL quectel-cm: Uses the standard quectel-cm |
| **Add PCIe Modem SUPPORT** | Select PCIe driver, requires kmod_mhi in feeds. | | **Add PCIe Modem SUPPORT** | Select PCIe driver, requires kmod_mhi in feeds. |
| **Add Qfirehose SUPPORT** | Add Qfirehose support for Qualcomm chip module firmware upgrade. | | **Add Qfirehose SUPPORT** | Add Qfirehose support for Qualcomm chip module firmware upgrade. |
| **luci-app-qmodem-hc** | Supports hc-g80 SIM card switching, exclusive to specific devices. | | **luci-app-qmodem-hc** | Supports hc-g80 SIM card switching, exclusive to specific devices. |
| **luci-app-qmodem-mwan** | Supports multi-WAN settings. | | **luci-app-qmodem-mwan** | Supports multi-WAN settings. |
| **luci-app-qmodem-sms** | SMS sending feature. | | **luci-app-qmodem-sms** | SMS sending feature. |
| **luci-app-qmodem-ttl** | TTL rewrite functionality. | | **luci-app-qmodem-ttl** | TTL rewrite functionality. |
# Project Introduction # Project Introduction
@ -103,62 +108,67 @@ Provides global configuration options for unified module settings.
This page is the **MWAN Configuration** interface, helping users manage multiple WAN connections by monitoring specific IPs to ensure network stability and reliability. Users can customize connection priorities and interfaces for load balancing or failover. This page is the **MWAN Configuration** interface, helping users manage multiple WAN connections by monitoring specific IPs to ensure network stability and reliability. Users can customize connection priorities and interfaces for load balancing or failover.
| Feature | Description |
|---------------------|--------------------------------------------------------------------| | Feature | Description |
| **Enable MWAN** | | | ---------------------- | ----------------------------------------------------------------------------- |
| Same Source Address | Ensures traffic from the same source uses the same WAN port for a set time. | | **Enable MWAN** | |
| **IPv4 Configuration** | | | Same Source Address | Ensures traffic from the same source uses the same WAN port for a set time. |
| Interface | Select WAN interfaces (e.g., `wan`, `usb0`) for different network connections. | | **IPv4 Configuration** | |
| Tracking IP | Enter specific IP addresses or domain names to monitor. | | Interface | Select WAN interfaces (e.g.,`wan`, `usb0`) for different network connections. |
| Priority | Set connection priority (1 to 255); lower values mean higher priority. | | Tracking IP | Enter specific IP addresses or domain names to monitor. |
| Priority | Set connection priority (1 to 255); lower values mean higher priority. |
## QModem Settings ## QModem Settings
| Configuration | Description |
|------------------------------|--------------------------------------------------------------------| | Configuration | Description |
| **Disable Auto-Load/Remove** | Disables all features below. | | --------------------------------- | -------------------------------------------------- |
| **Enable PCIe Module Scan** | Scans PCIe interfaces at startup (time-consuming). | | **Disable Auto-Load/Remove** | Disables all features below. |
| **Enable USB Module Scan** | Scans USB interfaces at startup (time-consuming). | | **Enable PCIe Module Scan** | Scans PCIe interfaces at startup (time-consuming). |
| **Monitor Configured USB Ports** | Monitors USB hot-plug events for configured slots. | | **Enable USB Module Scan** | Scans USB interfaces at startup (time-consuming). |
| **Monitor Configured PCIe Ports** | Scans PCIe ports at startup for configured slots. | | **Monitor Configured USB Ports** | Monitors USB hot-plug events for configured slots. |
| **Monitor Configured PCIe Ports** | Scans PCIe ports at startup for configured slots. |
### Slot Configuration ### Slot Configuration
This page allows users to configure each slot. This page allows users to configure each slot.
| Configuration | Description |
|-------------------------------|--------------------------------------------------------------------| | Configuration | Description |
| **Slot Type** | Choose the slot type (PCIe/USB) for device identification. | | ------------------------- | ------------------------------------------------------------------------------- |
| **Slot ID** | Enter the device's unique identifier (e.g., `0001:11:00.0[pcie]`). | | **Slot Type** | Choose the slot type (PCIe/USB) for device identification. |
| **SIM Card Indicator** | Bind slot to corresponding indicator light for SIM card status. | | **Slot ID** | Enter the device's unique identifier (e.g.,`0001:11:00.0[pcie]`). |
| **Network Indicator** | Bind slot to network status indicator for monitoring connection status. | | **SIM Card Indicator** | Bind slot to corresponding indicator light for SIM card status. |
| **Enable 5G to Ethernet** | Enables communication via network interface for supported modules. | | **Network Indicator** | Bind slot to network status indicator for monitoring connection status. |
| **Associated USB** | Associates USB ports with PCIe ports for better AT communication compatibility. | | **Enable 5G to Ethernet** | Enables communication via network interface for supported modules. |
| **Associated USB** | Associates USB ports with PCIe ports for better AT communication compatibility. |
### Module Configuration ### Module Configuration
This page allows users to modify module configurations. It is an advanced feature, and incorrect usage may cause the device to malfunction. The primary purpose is to manually add modules not in the compatibility list. This page allows users to modify module configurations. It is an advanced feature, and incorrect usage may cause the device to malfunction. The primary purpose is to manually add modules not in the compatibility list.
The configuration introduces `post_init` and `pre_dial` options, allowing users to set custom delays and send custom AT commands after module initialization or before dialing. Other options are self-explanatory. The configuration introduces `post_init` and `pre_dial` options, allowing users to set custom delays and send custom AT commands after module initialization or before dialing. Other options are self-explanatory.
## Development Plan ## Development Plan
| Plan | Progress |
|-------------------------------------------|----------------------| | Plan | Progress |
| Separate backend from luci-app completely | 0% | | ------------------------------------------- | -------- |
| Switch to js luci | 5% | | Separate backend from luci-app completely | 0% |
| Support more modules | 0% | | Switch to js luci | 5% |
| Use at_daemon to monitor module AT events | 5% | | Support more modules | 0% |
| Add phone functionality | 0% | | Use at_daemon to monitor module AT events | 5% |
| Improve documentation | 0% | | Add phone functionality | 0% |
| Add diagnostic features for user debugging | 0% | | Improve documentation | 0% |
| Add contributor and maintainer info in code | 0% | | Add diagnostic features for user debugging | 0% |
| Add contributor and maintainer info in code | 0% |
# Acknowledgments # Acknowledgments
During the development of the module management plugin, the following repositories were referenced: During the development of the module management plugin, the following repositories were referenced:
| Project | Reference Content |
|--------------------------------------------|-----------------------------------------| | Project | Reference Content |
| -------------------------------------------- | --------------------------------------- |
| https://github.com/Siriling/5G-Modem-Support | Module list and some AT implementations | | https://github.com/Siriling/5G-Modem-Support | Module list and some AT implementations |
| https://github.com/fujr/luci-app-4gmodem | Adopted many ideas from this project | | https://github.com/fujr/luci-app-4gmodem | Adopted many ideas from this project |
| https://github.com/obsy/sms_tool | AT command sending tool | | https://github.com/obsy/sms_tool | AT command sending tool |

View File

@ -1,5 +1,6 @@
# QModem # QModem
[![Auto compile with OpenWrt SDK](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml/badge.svg)](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml) [![Auto compile with OpenWrt SDK](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml/badge.svg)](https://github.com/FUjr/modem_feeds/actions/workflows/main.yml)
以前我在github上抄代码作者跟我说点个star我都会说好好好但是编译完了刷机后也没想起来点star其实这样挺不好的。 以前我在github上抄代码作者跟我说点个star我都会说好好好但是编译完了刷机后也没想起来点star其实这样挺不好的。
现在作者跟我说点个star除非代码真的很好到我想打好评的程度否则我就会在issue直接说抱歉我不想star然后直接抄。作为一个有讨好倾向的人这就是我锻炼真诚和勇气的方式 现在作者跟我说点个star除非代码真的很好到我想打好评的程度否则我就会在issue直接说抱歉我不想star然后直接抄。作为一个有讨好倾向的人这就是我锻炼真诚和勇气的方式
@ -21,15 +22,15 @@
```shell ```shell
echo >> feeds.conf.default echo >> feeds.conf.default
echo 'src-git modem https://github.com/FUjr/modem_feeds.git;main' >> feeds.conf.default echo 'src-git modem https://github.com/FUjr/QModem.git;main' >> feeds.conf.default
./scripts/feeds update modem ./scripts/feeds update qmodem
./scripts/feeds install -a -p modem ./scripts/feeds install -a -p qmodem
``` ```
强制更新库驱动 (使用本库驱动): 强制更新库驱动 (使用本库驱动):
```shell ```shell
./scripts/feeds install -a -f -p modem ./scripts/feeds install -a -f -p qmodem
``` ```
## 集成软件包 ## 集成软件包