Skip to content

Commit ada43a8

Browse files
committed
Documentation content post review update
1 parent b6ce03f commit ada43a8

File tree

2 files changed

+21
-5
lines changed
  • content/hardware/04.pro/carriers
    • portenta-max-carrier/tutorials/mpcie-4g-modem
    • portenta-mid-carrier/tutorials/user-manual

2 files changed

+21
-5
lines changed

content/hardware/04.pro/carriers/portenta-max-carrier/tutorials/mpcie-4g-modem/content.md

+6-2
Original file line numberDiff line numberDiff line change
@@ -330,7 +330,7 @@ Once the overlays are set, please reboot the Portenta X8 to ensure the configura
330330

331331
#### GNSS Global EG25 Module
332332

333-
The **GNSS Global (EG25) Module** supports the QMI interface, making it compatible with **NetworkManager**. You can configure the modem using **nmcli** (NetworkManager’s command-line tool):
333+
The **GNSS Global (EG25) Module** supports the *Qualcomm MSM Interface (QMI)*, which is compatible with **NetworkManager**. You can configure the modem using **nmcli**, the command-line tool for **NetworkManager**:
334334

335335
```bash
336336
nmcli c add type gsm ifname cdc-wdm0 con-name wwan0 apn hologram connection.autoconnect yes
@@ -391,7 +391,7 @@ sudo systemctl stop ModemManager
391391
sudo systemctl disable ModemManager
392392
```
393393

394-
This allows **qmicli** to communicate directly with the QMI interface for modem operations.
394+
Once **ModemManager** has been disabled, you can use **qmicli** to communicate reliably with the QMI interface for modem operations.
395395

396396
***The **EC200A-EU** modem is not compatible with __QMI__. It requires raw AT commands over a USB serial interface. For more information, refer to the [Quectel EC200A-EU documentation](https://python.quectel.com/en/products/ec200a-eu).***
397397

@@ -470,6 +470,10 @@ In a Docker environment, it is often useful to disable **ModemManager** to avoid
470470
sudo systemctl stop ModemManager
471471
```
472472

473+
```bash
474+
sudo systemctl disable ModemManager
475+
```
476+
473477
For modem power management, the connection between the **PCIE Enable (GPIO5)** pin and **VCC (3V3)** pin is required for a proper power setup. This bridge ensures proper hardware functionality when controlling the modem power. Moreover, you should manage power through software to allow the modem to be rebooted in case it becomes unresponsive.
474478

475479
Ensure that the Docker container has access to the GPIO device files by passing them into the container:

content/hardware/04.pro/carriers/portenta-mid-carrier/tutorials/user-manual/content.md

+15-3
Original file line numberDiff line numberDiff line change
@@ -2168,7 +2168,7 @@ This step ensures the modem functions properly in QMI mode.
21682168

21692169
The **ModemManager** service manages the power for the Pro 4G Module via a script. **Global (EG25)** and **EU (EC200A-EU)** modems are different and require different configurations:
21702170

2171-
- **Global EG25 Module**: This modem is supported directly by **NetworkManager**, which works alongside **ModemManager**.
2171+
- **Global EG25 Module**: This modem supports the *Qualcomm MSM Interface (QMI)*, making it compatible with **NetworkManager**, which uses **nmcli** as its command-line tool. It also works with **ModemManager** to manage modem connectivity.
21722172
- **EU EC200A-EU Module**: This modem is **not officially supported** by **ModemManager**. It is **not QMI-compatible** and requires raw AT commands over a USB serial interface. It connects as a USB device, creating an `ec200aeu` network interface managed by existing `udev` rules.
21732173

21742174
Power management is handled by **ModemManager** using the following script setup. Before starting **ModemManager**, the system runs a script to power on the modem, and another script is run after the service stops to power off the modem:
@@ -2270,6 +2270,10 @@ In a Docker environment, it is often useful to disable **ModemManager** to avoid
22702270
sudo systemctl stop ModemManager
22712271
```
22722272

2273+
```bash
2274+
sudo systemctl disable ModemManager
2275+
```
2276+
22732277
However, when **ModemManager** is active, it handles modem power automatically using customized scripts, such as:
22742278

22752279
- `/usr/sbin/modem_on.sh`
@@ -2547,12 +2551,16 @@ The output will list the detected modems, including the Pro 4G Module. Note the
25472551

25482552
![Arduino Pro 4G Module - AT Commands](assets/portentaMIDcarrier_mpcie_4gmodem_at1.png)
25492553

2550-
Before sending AT commands, ModemManager must be in debug mode. First, stop the ModemManager service using:
2554+
Before sending AT commands, ModemManager must be in debug mode. First, stop and disable the ModemManager service using:
25512555

25522556
```bash
25532557
sudo systemctl stop ModemManager
25542558
```
25552559

2560+
```bash
2561+
sudo systemctl disable ModemManager
2562+
```
2563+
25562564
Then start it in the background with debugging enabled by running:
25572565

25582566
```bash
@@ -2624,12 +2632,16 @@ This ensures the modem powers up correctly and becomes available for network ope
26242632

26252633
#### Docker Container Considerations
26262634

2627-
Disable ModemManager to prevent conflicts with tools like `qmicli` when managing either modem within a Docker container. This can be done by using the following command:
2635+
Disable **ModemManager** to prevent conflicts with tools like `qmicli` when managing either modem within a Docker container. This can be done by using the following command:
26282636

26292637
```bash
26302638
sudo systemctl stop ModemManager
26312639
```
26322640

2641+
```bash
2642+
sudo systemctl disable ModemManager
2643+
```
2644+
26332645
Inside the container, you will need to manage the modem’s power as explained in this [**EC200A-EU**](#emea-ec200a-eu-module-1) section.
26342646

26352647
To send AT commands, use `qmicli` within the Docker container. For example, you might use following command to interact with the modem:

0 commit comments

Comments
 (0)