Skip to content

Commit 88a17e9

Browse files
committed
Updated docs.
1 parent f0e5026 commit 88a17e9

File tree

168 files changed

+1013
-290
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

168 files changed

+1013
-290
lines changed

docs/en/DTU_GUI_Tool_User_Guide.md

Lines changed: 95 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,95 @@
1+
# DTU GUI Tool User Guide
2+
3+
## 1. Overview
4+
5+
This document mainly introduces the use of the DTU GUI tool.
6+
7+
The DTU GUI tool is currently mainly used for customer development and debugging. It provides basic query and setting functions, as well as simulating MCU testing and DTU module data transmission and reception. Users can use a USB to TTL module to connect the PC and the DTU.
8+
9+
The DTU GUI is developed based on wxPython. The currently compiled `dtu_gui.exe` only supports Windows systems. Users on Linux/macOS can configure the Python environment, install the wxPython library, and directly run `dtu_gui.py` or compile the corresponding version of the executable program themselves.
10+
11+
## 2. Running the DTU GUI Tool
12+
13+
**Double-click to open the DTU GUI tool**
14+
15+
![](./media/DTU_GUI_User_Guides/dtugui.jpg)
16+
17+
**Open the serial port**
18+
19+
![](./media/DTU_GUI_User_Guides/gui_open_port_done.jpg)
20+
21+
## 3. DTU GUI Function Introduction
22+
23+
## 3.1 Toolbox
24+
25+
**The current functions of the toolbox are as follows:**
26+
| **Button Name** | **Function** |
27+
| --------------- | ------------ |
28+
| **Get Current Parameters** | Get the current configuration parameters of the DTU and jump to the `Parameter Configuration` interface to display specific parameters |
29+
| **Save All Settings and Restart** | Write the current configuration parameters in the `Parameter Configuration` interface to the DTU and restart the DTU |
30+
| **Restore Factory Settings and Restart** | Delete all configuration parameters, restore factory settings, and restart the DTU |
31+
| **Query IMEI Number** | Get the IMEI number of the DTU module |
32+
| **Query Local Number** | Get the phone number of the SIM card in the DTU |
33+
| **Query Signal Strength** | Get the CSQ signal strength, with a range of 0 ~ 31, where the larger the value, the stronger the signal strength |
34+
| **Device Restart** | Restart the DTU device |
35+
36+
### 3.1.1 Query IMEI Number:
37+
38+
- Query IMEI number:
39+
40+
![](./media/DTU_GUI_User_Guides/gui_get_imei.jpg)
41+
42+
The detailed serial port data is displayed in the string format in the left serial port data display box, and the obtained IMEI number is displayed in the command message box on the right.
43+
44+
### 3.1.2 Get Current Configuration Parameters of DTU:
45+
46+
Click the `Get Current Parameters` button to immediately jump to the parameter configuration interface.
47+
![](./media/DTU_GUI_User_Guides/gui_get_dtu_config.jpg)
48+
49+
Click the interactive interface to see the specific serial port information interaction between the tool and the DTU.
50+
![](./media/DTU_GUI_User_Guides/gui_get_dtu_config_uart_data.jpg)
51+
52+
## 3.3 Import Configuration Parameters
53+
After reading the current configuration parameters, enter the parameter configuration interface. You can modify the configuration according to actual needs (you can also fill in the configuration directly without reading it).
54+
### 3.3.1 Basic Parameter Configuration
55+
56+
![](./media/DTU_GUI_User_Guides/gui_config_page1.jpg)
57+
The basic configuration parameters are as shown in the figure above:
58+
| **Parameter Name** | **Meaning** |
59+
| ------------------ | ----------- |
60+
| Cloud Platform Channel Type | Cloud platform selection, options: `Aliyun`, `Tencent Cloud`, `Huawei Cloud`, `Quectel Cloud`, `TCP Private Cloud`, `MQTT Private Cloud`|
61+
| Firmware Upgrade | Whether to enable firmware OTA upgrade |
62+
| Script Upgrade | Whether to enable project script OTA upgrade |
63+
| Historical Data Storage | When communication is abnormal and the DTU cannot send data to the cloud, the data to be sent is saved and resent after communication is restored |
64+
| Serial Port Number | External MCU connection DTU serial port number, options: `0`, `1`, `2` |
65+
| Baud Rate | Serial port baud rate |
66+
| Data Bits | Parity check |
67+
| Stop Bits | Stop bit length, options: `1`, `2` |
68+
| Flow Control | Hardware control flow, options: `FC_NONE`, `FC_HW` |
69+
| Control 485 Communication Direction Pin | Pull up and down the specified GPIO before and after sending data through the serial port to indicate the direction of 485 communication. For example, `1`, `2` represent `UART.GPIO1`, `UART.GPIO2`.
70+
71+
### 3.3.2 Cloud Parameter Configuration
72+
The cloud parameter configuration items will change according to the value selected in the basic `Cloud Platform Communication Type`. When the `Cloud Platform Communication Type` is Aliyun, the cloud parameter configuration items are as follows:
73+
74+
![](./media/DTU_GUI_User_Guides/gui_aliyun_config.jpg)
75+
76+
When the `Cloud Platform Communication Type` is Quectel Cloud, the cloud parameter configuration items are as follows:
77+
![](./media/DTU_GUI_User_Guides/gui_quecthing_config.jpg)
78+
79+
## 3.4 Data Sending Frame Format Requirements
80+
The data sending format is consistent with the communication format between the MCU and the DTU. Depending on the different communication protocols with the cloud, the communication protocol between the module and the external device (such as the MCU) will also be different. When the module communicates with the cloud using the TCP protocol, since both TCP and the serial port are in the form of data streams, the data is directly transmitted without any processing; when the module communicates with the cloud using the MQTT protocol, to distinguish different data frames, the module's external serial port protocol uses a simple data frame:
81+
`<topic_id>,<msg_len>,<msg_data>"`.
82+
**Note: Quectel Cloud does not support Topic settings, `<topic_id>` is uniformly `"0"`**
83+
84+
**Example Messages:**
85+
86+
- Uplink Message:
87+
88+
`“1,6,abcedf”`
89+
90+
- Downlink Message:
91+
92+
`“1,6,ijklmn”`
93+
94+
The uplink and downlink messages between the module and the external device (MCU) are in string format, and the data items are separated by `,`.
95+
![](./media/DTU_GUI_User_Guides/gui_send_frame.jpg)

docs/en/DTU_OTA_Upgrade_User_Guide.md

Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
# DTU OTA Upgrade User Guide
2+
3+
## OTA Upgrade
4+
5+
> **Firmware upgrades only support differential upgrades, not full package upgrades**
6+
7+
### Aliyun
8+
9+
> **Project file upgrade package: create the upgrade package by changing the file extension of the project code file to `.bin`, upload it to the cloud, and multiple files can be uploaded**
10+
11+
#### Firmware Upgrade
12+
13+
1. Create a differential firmware upgrade package (contact firmware developers);
14+
2. Create an OTA module, named after the device platform name, e.g., `EC600N-CNLC`.
15+
16+
![](./media/aliyun_ota_fota_module.png)
17+
18+
3. Create an OTA upgrade package
19+
20+
![](./media/aliyun_ota_fota_upgrade_package.png)
21+
22+
4. Select batch upgrade, create an upgrade plan
23+
24+
![](./media/aliyun_ota_fota_plain.png)
25+
26+
5. Wait for the device to upgrade and check the upgrade results
27+
28+
+ If the device has OTA upgrade and automatic OTA upgrade enabled, wait for the device to complete the upgrade and check the upgrade results;
29+
+ If the device has OTA upgrade enabled but automatic upgrade is not enabled, you can issue the `user_ota_action=1` model setting command through the online debugging module to perform the OTA upgrade.
30+
31+
![](./media/aliyun_ota_fota_upgrade_process.png)
32+
33+
#### Project Upgrade
34+
35+
1. Create an OTA module, named after `PROJECT_NAME` in `settings.py`, e.g., `QuecPython-Tracker`.
36+
37+
![](./media/aliyun_ota_sota_module.png)
38+
39+
2. Change the file extension of the project files to `.bin`
40+
3. Create an OTA upgrade package
41+
+ In the **Custom Information Pushed to Device** section, write the upgrade file name corresponding to the full path file name on the device, e.g., `{"files":{"common.bin":"/usr/modules/common.py","settings.bin":"/usr/settings.py","test_tracker.bin":"/usr/test_tracker.py"}}`
42+
43+
![](./media/aliyun_ota_sota_upgrade_package.png)
44+
45+
4. Select batch upgrade, create an upgrade plan
46+
47+
![](./media/aliyun_ota_sota_plain.png)
48+
49+
5. Wait for the device to upgrade and check the upgrade results
50+
51+
+ If the device has OTA upgrade and automatic OTA upgrade enabled, wait for the device to complete the upgrade and check the upgrade results;
52+
+ If the device has OTA upgrade enabled but automatic upgrade is not enabled, you can issue the `user_ota_action=1` model setting command through the online debugging module to perform the OTA upgrade.
53+
54+
![](./media/aliyun_ota_sota_upgrade_process.png)
55+
56+
### Quectel Cloud
57+
58+
> **For project file upgrade packages, it is recommended to package multiple project files into a compressed file and upload it to the cloud**
59+
60+
#### Firmware Upgrade
61+
62+
1. Create a differential firmware upgrade package (contact firmware developers);
63+
2. Create an OTA upgrade model, add firmware components, and MCU components (for project upgrades)
64+
+ The identifier of the firmware type component is named after the device platform name, e.g., `EC600N-CNLC`.
65+
+ The identifier of the MCU type component is named after `PROJECT_NAME` in `settings.py`, e.g., `QuecPython-Tracker`.
66+
67+
![](./media/quec_ota_model.png)
68+
69+
3. Create a firmware version upgrade package
70+
71+
![](./media/quec_ota_fota_version_package.png)
72+
73+
4. Create a firmware upgrade plan
74+
75+
![](./media/quec_ota_fota_plain.png)
76+
77+
5. Wait for the device to upgrade and check the upgrade results
78+
79+
+ If the device has OTA upgrade and automatic OTA upgrade enabled, wait for the device to complete the upgrade and check the upgrade results;
80+
+ If the device has OTA upgrade enabled but automatic upgrade is not enabled, you can issue the `user_ota_action=1` model setting command through the online debugging module to perform the OTA upgrade.
81+
82+
![](./media/quec_ota_fota_upgrade_process.png)
83+
84+
#### Project Upgrade
85+
86+
1. Package the project files into a compressed file, packaging command: `tar -zcvf sotaFile.tar.gz *.py`;
87+
2. Create an OTA upgrade model, add firmware components, and MCU components (for project upgrades)
88+
+ The identifier of the firmware type component is named after the device platform name, e.g., `EC600N-CNLC`.
89+
+ The identifier of the MCU type component is named after `PROJECT_NAME` in `settings.py`, e.g., `QuecPython-Tracker`.
90+
91+
![](./media/quec_ota_model.png)
92+
93+
3. If MCU components were not created when creating the OTA model, they can be added in the model
94+
95+
![](./media/quec_ota_model_add_mcu_module.png)
96+
97+
4. Create a project version upgrade package
98+
99+
![](./media/quec_ota_sota_version_package.png)
100+
101+
4. Create a project upgrade plan
102+
103+
![](./media/quec_ota_sota_plain.png)
104+
105+
5. Wait for the device to upgrade and check the upgrade results
106+
107+
+ If the device has OTA upgrade and automatic OTA upgrade enabled, wait for the device to complete the upgrade and check the upgrade results;
108+
+ If the device has OTA upgrade enabled but automatic upgrade is not enabled, you can issue the `user_ota_action=1` model setting command through the online debugging module to perform the OTA upgrade.
109+
110+
![](./media/quec_ota_sota_upgrade_process.png)

0 commit comments

Comments
 (0)