Skip to content

Commit 9bfb6ac

Browse files
committed
Pro 4G Modules content block update
1 parent 7dce09d commit 9bfb6ac

File tree

1 file changed

+30
-12
lines changed
  • content/hardware/04.pro/carriers/portenta-mid-carrier/tutorials/user-manual

1 file changed

+30
-12
lines changed

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

Lines changed: 30 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2092,7 +2092,7 @@ fw_setenv carrier_name mid
20922092
fw_setenv overlays 'ov_som_lbee5kl1dx ov_som_x8h7 ov_carrier_breakout_usbfs ov_carrier_mid_pcie_mini'
20932093
```
20942094

2095-
For managing the Pro 4G Module (**EG25** and **EC200A-EU**), you **only need the USB overlay (`ov_carrier_breakout_usbfs`)**, and **mPCIe overlay (`ov_carrier_mid_pcie_mini`) is not necessary** for these USB modems. You can configure the necessary USB overlays using the following command:
2095+
For managing the Pro 4G Module (**EG25** and **EC200A-EU**), you **only need the USB overlay (`ov_carrier_breakout_usbfs`)**, and **mPCIe overlay (`ov_carrier_mid_pcie_mini`) is not necessary** for these USB modems. You can configure the necessary overlays with USB overlay using the following command:
20962096

20972097
```bash
20982098
fw_setenv overlays 'ov_som_lbee5kl1dx ov_som_x8h7 ov_carrier_breakout_usbfs'
@@ -2166,7 +2166,7 @@ ip link set dev wwan0 up
21662166

21672167
This step ensures the modem functions properly in QMI mode.
21682168

2169-
#### ModemManager and Power Management
2169+
#### ModemManager and Power Management Service
21702170

21712171
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:
21722172

@@ -2191,40 +2191,58 @@ To manually stop the **ModemManager** service, use the following command:
21912191
systemctl stop ModemManager
21922192
```
21932193

2194-
After stopping **ModemManager**, there will be a delay before the modem can be powered back on and detected by **mmcli**.
2194+
After stopping **ModemManager**, there will be a delay before the modem can be powered back on and detected by **mmcli**. The delay is around 20 seconds for appropriate initialization.
21952195

21962196
#### Modem Configuration
21972197

2198-
For the **Global EG25 Module**, you can configure the modem using **NetworkManager** with the following command:
2198+
#### Global EG25 Module
2199+
2200+
The **Global EG25 Module** is supported by **NetworkManager**, allowing you to configure it easily. To set up a connection, use the following command:
21992201

22002202
```bash
22012203
nmcli c add type gsm ifname cdc-wdm0 con-name wwan0 apn hologram connection.autoconnect yes
22022204
```
22032205

2204-
For the **EU EC200A-EU Module**, **ModemManager** does not support it out of the box, so a patch is required for compatibility. You can then use the following command to connect:
2206+
This command establishes a GSM connection on the `cdc-wdm0` interface and automatically connects to the `hologram` APN.
2207+
2208+
#### EU EC200A-EU Module
2209+
2210+
The **EU EC200A-EU Module** is not directly supported by **ModemManager** out of the box and requires a compatibility patch. Once the patch is applied, you can connect to the network using:
22052211

22062212
```bash
22072213
mmcli -m 0 --simple-connect='apn=iot.1nce.net,ip-type=ipv4v6'
22082214
```
22092215

2210-
The modems will create a USB 'eth0' interface that will be remapped into ec200aeu by an udev rule```
2216+
The modem will create a USB `eth0` interface that will be remapped into `ec200aeu` by an udev rule.
2217+
2218+
#### Docker Environment and Power Management
22112219

2212-
In a Docker environment, it may be beneficial to disable **ModemManager** and control the modem using **qmicli**. To avoid conflicts, disable **ModemManager** with the following command:
2220+
In a Docker environment, it may be helpful to disable **ModemManager** to avoid conflicts and instead control the modem using **qmicli**. You can disable **ModemManager** with the following command:
22132221

22142222
```bash
2215-
sudo systemctl stop ModemManager
2223+
systemctl stop ModemManager
22162224
```
22172225

2218-
Next, provide a Docker container with an **entrypoint.sh** script to manage the modem's power using **gpiod**:
2226+
For modem power management, ensure that the Docker container has access to the GPIO device files by passing them into the container:
22192227

22202228
```bash
2221-
gpiod set-value <gpio-pin> 1
2229+
docker run --device /dev/gpiochip5 <docker-image>
22222230
```
22232231

2232+
Inside the container, an **entrypoint.sh** script can control the modem's power via GPIO. To enable the 3.3V Buck Converter, the following command can be added to the script:
2233+
22242234
```bash
2225-
sleep 10
2235+
gpioset gpiochip5 5=1
22262236
```
22272237

2238+
This will enable the power to the modem, and add a delay for modem initialization:
2239+
2240+
```bash
2241+
sleep 20
2242+
```
2243+
2244+
This configuration ensures proper modem control and avoids power issues during startup.
2245+
22282246
Once the modem is powered on, use **qmicli** to configure and manage the modem. For instance, to check the modem status, use:
22292247

22302248
```bash
@@ -2511,7 +2529,7 @@ If ModemManager is disabled or if you prefer an alternative method, you can use
25112529
sudo qmicli -d /dev/cdc-wdm0 --dms-get-manufacturer
25122530
```
25132531

2514-
Power management for the EC200A-EU module may require manual intervention, especially if ModemManager is disabled. You can power on the modem using a custom script that leverages the `gpiod` library. The script would include commands to set the GPIO pin high and then wait around 20 seconds for the modem to become available, for example:
2532+
Power management for the *EC200A-EU module* may require manual intervention, especially if **ModemManager** is disabled. You can power on the modem using a custom script that leverages the `gpiod` library. The script would include commands to set the GPIO pin high and then wait around 20 seconds for the modem to become available, for example:
25152533

25162534
```bash
25172535
gpiod set-value <gpio-pin> 1

0 commit comments

Comments
 (0)