Understand USB suspended or unconnected mode

Thread Starter


Joined Jan 31, 2021

I'm trying to understand a problem I'm having related to a USB connection. I'm working with a Mini PCIe 4G module (Quectel EC25 Mini PCle 4G/LTE) and at this moment my goal is to put it in sleep mode. I'm communicating with the module via UART (RX and TX) from which I send AT commands through a microcontroller (I'm using an atmega4809). I also have the module connected to a Raspberry Pi 4 through USB.

In order to put the module to sleep three conditions must be fulfilled (pag. 25 of manual):

1. Write the AT Command for sleep mode
2. Pull DTR pin to high
3. Put the USB connection in suspended mode.

Following these rules, the module enters sleep mode.

My problem is that I'm trying to put the 4G module in sleep mode with the third condition replaced by turning off the RPI (that is connected with USB). It doesn't work and I'm trying to figure out why. If I execute condition 1, then condition 2, followed by turning of the RPI the module does not enter in sleep mode. However, if after turning the RPI off I disconnect manually the USB connection, the module enters sleep mode.

Any idea why it works if I disconnect the cable but not if I simply shutdown the Raspberry (and by shutdown I mean remove the RPI power supply)? Any thoughts would be appreciated.

Btw, I'm not a professional, just currently a hobbyist trying to develop a DIY project.

As attachment I show the schematics of the USB connector and the 4G module.