diff --git a/docs/Application_guide/zh/media/solutions/poc/Logging.png b/docs/Application_guide/zh/media/solutions/poc/Logging.png
index 4d100e9e860be790729266670d872c658f007f6d..a6a99a652c09fe7812adc3f66a9df1c0677b88f5 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/Logging.png and b/docs/Application_guide/zh/media/solutions/poc/Logging.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/MainScreen.png b/docs/Application_guide/zh/media/solutions/poc/MainScreen.png
index bbc591f84d5319452058245ec1afa1757cb77f6a..94fcf10980f06853cf1b95a8e550c5ea8df1ba54 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/MainScreen.png and b/docs/Application_guide/zh/media/solutions/poc/MainScreen.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/bord.png b/docs/Application_guide/zh/media/solutions/poc/bord.png
index 74c28f6830931738543ad76c1f272d88e2be1e1d..a656e40d5b7d0fe3e279959c45cec925c5230f64 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/bord.png and b/docs/Application_guide/zh/media/solutions/poc/bord.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/comport.png b/docs/Application_guide/zh/media/solutions/poc/comport.png
index 66728782024289081ab7266b74cbe612acaa0233..270017b82e7cae2e731cfa8deb67bd6530ed6485 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/comport.png and b/docs/Application_guide/zh/media/solutions/poc/comport.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/get_imei.png b/docs/Application_guide/zh/media/solutions/poc/get_imei.png
new file mode 100644
index 0000000000000000000000000000000000000000..26db7f5e97cc0b759cbe5eea95b4744d0b7b409c
Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/get_imei.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/group.png b/docs/Application_guide/zh/media/solutions/poc/group.png
new file mode 100644
index 0000000000000000000000000000000000000000..46f8714bccd99e53af37d323b1c77665111c0ad9
Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/group.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/member.png b/docs/Application_guide/zh/media/solutions/poc/member.png
new file mode 100644
index 0000000000000000000000000000000000000000..66d97359f43f759e5b63a9bd1ad62f97570db383
Binary files /dev/null and b/docs/Application_guide/zh/media/solutions/poc/member.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png b/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png
index 4b9cccf5938049c52ab0587560b8c51c21f6ac3a..5bed31217449da5468b76c41573cab4daa4fba45 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png and b/docs/Application_guide/zh/media/solutions/poc/no_sim_card.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/services.png b/docs/Application_guide/zh/media/solutions/poc/services.png
index bdd83f7385f4fec4a131209085977906004ed676..ddb0a5a59cfd3adeef44dbf642ffe6454ee184e0 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/services.png and b/docs/Application_guide/zh/media/solutions/poc/services.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/speak.png b/docs/Application_guide/zh/media/solutions/poc/speak.png
index c5bdb082b6c9fcb175bb2172ecb2d858cbcf837f..a656e40d5b7d0fe3e279959c45cec925c5230f64 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/speak.png and b/docs/Application_guide/zh/media/solutions/poc/speak.png differ
diff --git a/docs/Application_guide/zh/media/solutions/poc/ui_uml.png b/docs/Application_guide/zh/media/solutions/poc/ui_uml.png
index 08995e03a6a2790abf9d8f0518a56d8cd3cbcf34..68d018a603e89b5a41d6d6f02d2b2f7c5c919d9d 100644
Binary files a/docs/Application_guide/zh/media/solutions/poc/ui_uml.png and b/docs/Application_guide/zh/media/solutions/poc/ui_uml.png differ
diff --git a/docs/Application_guide/zh/solutions/poc/README.md b/docs/Application_guide/zh/solutions/poc/README.md
index 7378c652ba31de65387e7d0a85be0efe65218045..2b2600555f78765a20d4d37dd8f4f56fdfccafd0 100644
--- a/docs/Application_guide/zh/solutions/poc/README.md
+++ b/docs/Application_guide/zh/solutions/poc/README.md
@@ -7,7 +7,7 @@
- 超长待机: 支持超低功耗模式。
- 使用 Python 语言,便于二次开发。
-
+
---
diff --git a/docs/Application_guide/zh/solutions/poc/dev_resources.md b/docs/Application_guide/zh/solutions/poc/dev_resources.md
index 4c787494e5c1f2b6177b3e2d9b2c77122c7589e0..7b67f1ecd1eae021c172afd91e2efaa29979264b 100644
--- a/docs/Application_guide/zh/solutions/poc/dev_resources.md
+++ b/docs/Application_guide/zh/solutions/poc/dev_resources.md
@@ -13,9 +13,8 @@
## 模组资料
- 型号:[EC600MCN_LE](https://python.quectel.com/modules-cat/ec600m-series)
-- [规格书](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_EC600M-CN_LTE_Standard_模块产品规格书_V1.2.pdf)
+- [规格书](https://images.quectel.com/python/2023/04/Quectel_EC600M-CN_LTE_Standard_模块产品规格书_V1.2.pdf)
- [驱动下载](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)
-
## 配件资料
- LCD 显示屏
@@ -38,7 +37,7 @@
## 固件包
-- 版本:EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802
+- 版本:EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117
- 下载[固件](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip)
## 实验源码
@@ -48,6 +47,5 @@
```bash
git clone https://github.com/QuecPython/solution-POC
cd solution-POC
- git checkout EC600MCNLE-Demo # 或者 git checkout v2.0.0
```
- [压缩包下载](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.0.zip)
\ No newline at end of file
diff --git a/docs/Application_guide/zh/solutions/poc/quick_start.md b/docs/Application_guide/zh/solutions/poc/quick_start.md
index 7a1b74cb14ed1be8c7dedb762c1867cc096fe2fd..58e79102f391a9057b54d2afdc075aa30c486bf3 100644
--- a/docs/Application_guide/zh/solutions/poc/quick_start.md
+++ b/docs/Application_guide/zh/solutions/poc/quick_start.md
@@ -14,18 +14,22 @@
## 环境搭建
-- 下载并安装 EC600M 系列模组驱动:[QuecPython_USB_Driver_Win10_ASR](https://python.quectel.com/wp-content/uploads/2024/09/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)。
+- 下载并安装 EC600M 系列模组驱动:[QuecPython_USB_Driver_Win10_ASR](https://images.quectel.com/python/2023/04/Quectel_Windows_USB_DriverA_Customer_V1.1.13.zip)。
-- 下载并安装[VSCode](https://code.visualstudio.com/)。
+- 下载并安装 [VSCode](https://code.visualstudio.com/)。
-- 下载并解压 [QPYCom](https://python.quectel.com/wp-content/uploads/2024/09/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。
+- 下载并解压 [QPYCom](https://images.quectel.com/python/2022/12/QPYcom_V3.6.0.zip) 工具到电脑的合适位置。
- 下载[固件包](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip)。
- 下载[实验源码](https://github.com/QuecPython/solution-POC/archive/refs/tags/v2.0.0.zip)。
- 申请伯纳德**芯平台**测试账号。
-
+
+ 根据下图所示步骤获取 IMEI 号,将其提供给移远销售人员,即可申请对讲机测试账号。
+
+ 
+
> 💡 **Tips**
> - 非商业测试,请联系移远销售人员( li.bao@quectel.com ),申请伯纳德**芯平台**测试账号。
> - 商业应用请走商务流程。
@@ -34,33 +38,33 @@
按照下图进行硬件连接:
-
+
-1. 将喇叭连接至图中标识有`SPK+`和`SPK-`的排针上。
+1. 将喇叭连接至图中标识有 `SPK+` 和 `SPK-` 的排针上。
2. 将 LCD 屏连接至标识有 `LCD` 字样的排针上。
3. 在图示位置插入可用的 Nano SIM 卡。
-4. 将天线连接至标识有`LTE`字样的天线连接座上。
+4. 将天线连接至标识有 `LTE` 字样的天线连接座上。
5. 使用 Type-C 数据线连接开发板和电脑。
## 设备开发
### 开机
-完成硬件连接的工作后,长按开发板上标识为`PWK`的按键,直到网络灯闪烁,或电脑设备管理器的端口列表中出现包含`Quectel USB` 字样的 COM 口,表示开机成功。
+完成硬件连接的工作后,长按开发板上标识为`PWK`的按键,直到网络灯闪烁,或电脑设备管理器的端口列表中出现包含 `Quectel USB` 字样的 COM 口,表示开机成功。
-
+
### 烧录固件包
-参考[此章节](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html#%E4%B8%8B%E8%BD%BD%E5%9B%BA%E4%BB%B6),烧录固件包 [EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip) 至开发板。
+参考[此章节](https://python.quectel.com/doc/Application_guide/zh/dev-tools/QPYcom/qpycom-dw.html#%E4%B8%8B%E8%BD%BD%E5%9B%BA%E4%BB%B6),烧录固件包 [EC600MCNLER06A01M08_POC_XBND_OCPU_QPY_BETA0117.zip](https://github.com/QuecPython/solution-POC/releases/download/v.1.0.0/EC600MCNLER06A01M08_XBND_OCPU_QPY_BETA0802.zip) 至开发板。
### 脚本导入与运行
-1. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#PC%E4%B8%8E%E6%A8%A1%E7%BB%84%E9%97%B4%E7%9A%84%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93),将源码目录下 `code`文件夹中的所有文件导入到模组文件系统,如下图所示:
+1. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#PC%E4%B8%8E%E6%A8%A1%E7%BB%84%E9%97%B4%E7%9A%84%E6%96%87%E4%BB%B6%E4%BC%A0%E8%BE%93),将源码目录下 `code` 文件夹中的所有文件导入到模组文件系统,如下图所示:
-2. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%96%87%E4%BB%B6),执行主程序文件`poc_main.py`。
+2. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E6%89%A7%E8%A1%8C%E8%84%9A%E6%9C%AC%E6%96%87%E4%BB%B6),执行主程序文件 `poc_main.py`。
3. 参考[此章节](https://python.quectel.com/doc/Getting_started/zh/first_python.html#%E5%81%9C%E6%AD%A2%E7%A8%8B%E5%BA%8F%E8%BF%90%E8%A1%8C),停止程序运行。
## 业务调试
@@ -69,21 +73,33 @@
执行 `poc_main.py` 脚本后,程序开始运行,进入到 `WelcomeScreen` 界面,同时获取 SIM 卡状态和当前账号,并通过 TTS 语音播报当前登录用户及其加入的群组信息。
-
+
> 🚩 **Warning**
> 未插入 SIM 卡时不会进入到主界面,插入 SIM 卡并重启设备后即可正常运行。
->
+>
### 主界面
-主界面包含多个选项列表(用户可参考 [软件设计讲解 - 界面模块](./software_design.html#界面模块) 自行添加、修改),每个选项对应一个新的界面。
+主界面包含多个选项列表(用户可参考 [软件设计讲解 - 界面模块](./software_design.html#界面模块) 自行添加、修改),每个选项对应一个新的界面。
- 单击 `key2` 键,选中框往下滚动。
- 双击 `key2` 键,进入所选中的界面。
- 长按 `key2` 键,返回上一级界面。
-
+
+
+### 群组列表
+
+进入群组管理界面可以查询到当前账号所加入的群组列表,并且消息提示框会提示当前所在哪个群组,如下图:
+
+
+
+### 成员列表
+
+进入成员列表界面可以查询到当前所在群组的所有成员,如下图:
+
+
### 对讲
@@ -93,9 +109,8 @@
- 对方讲话时,菜单栏显示 `听筒` 图标。
**主动呼叫图示:**
-
-
+
**对方呼叫图示:**
-
+
diff --git a/docs/Application_guide/zh/solutions/poc/software_design.md b/docs/Application_guide/zh/solutions/poc/software_design.md
index 8956cf90947e59eca0e7afbc677221f67728c65a..bca3d80c26de65ed64c8953b41dab8bce2031ecb 100644
--- a/docs/Application_guide/zh/solutions/poc/software_design.md
+++ b/docs/Application_guide/zh/solutions/poc/software_design.md
@@ -127,10 +127,11 @@ class AbstractLoad(object):
`services.py` 定义了多个 `service`,用于提供各种服务。这些 `servies` 继承 `AbstractLoad` 抽象加载基类,便于在加载过程中提供各类服务事项。
-1. `DevInfoService`:提供设备信息服务
-2. `MediaService`:提供音频服务
-3. `NetService`:提供网络服务
-4. `PocService`:提供 Poc 对讲服务
+1. `BatteryManger`:提供电池电量管理
+2. `DevInfoService`:提供设备信息服务
+3. `MediaService`:提供音频服务
+4. `NetService`:提供网络服务
+5. `PocService`:提供 Poc 对讲服务
各 `service` 之间的关系如下图:
@@ -188,6 +189,7 @@ class Screen(AbstractLoad):
if cur_idx < 0:
cur_idx = count - 1
return cur_idx
+
def next_idx(self, now_idx, count):
cur_idx = now_idx + 1
if cur_idx > count - 1:
@@ -198,9 +200,9 @@ class Screen(AbstractLoad):
在 `ui.py` 中,还定义了多个 UI 界面,如:
1. `PocUI`:主 UI,提供 `MenuBar`、`PromptBox` 和 `Screen` 的管理以及按键事件的响应处理
-2. `MenuBar`:菜单栏
-3. `PromptBox`:提示框
-4. `Screen`:UI 屏幕,也可以理解为 UI 界面,用于展示给用户看的各种界面。如 `MenuBar`、`WelcomeScreen` 和 `MemberScreen` 等
+2. `MenuBar`:菜单栏(用于显示网络状态、时间、电量以及其他图标,一直显示在屏幕上方,大小为 240×20)
+3. `PromptBox`:消息提示框(用于消息提示,显示在当前 UI 界面之上)
+4. `Screen`:UI 屏幕,也可以理解为 UI 界面,用于展示给用户看的各种界面。如 `GroupScreen`、`WelcomeScreen` 和 `MemberScreen` 等
各 UI 界面之间的关系如下图:
@@ -208,6 +210,21 @@ class Screen(AbstractLoad):
> 如用户需添加 `Screen`,可参考已有 `Screen` 样式进行添加,并添加到 `poc_main.py` 中对应的位置即可。
+### 群组管理
+
+在 `ui.py` 的 `GroupScreen` 里面实现了群组管理的功能,在页面加载之前通过 `EventMap` 事件管理,向 `Services` 发送对应事件,获取当前账号所加入的所有群组,并通过列表将其显示出来。
+
+```python
+class GroupScreen(Screen):
+ def load_before(self):
+ EventMap.bind("update_group_info", self.__update_group_info) # 更新获取群组信息
+
+ def load(self):
+ self.__load_group_list() # 判断是否获取到组群列表
+ self.__group_screen_list_create() # 创建群组界面列表
+ self.__load_group_cur()
+```
+
### APP管理
`poc_main.py` 中使用一个 `APP` 类进行管理,用户添加或修改如按键、消息框和服务等操作,调用相应的函数添加即可。