I just got an EXP GDC TH3P4G3 Thunderbolt eGPU dock and it seems to work just fine for now (I don’t currently have a GPU plugged in, I’m just using it as a Thunderbolt hub), and I noticed that whenever I try to put the laptop to sleep, it turns off the screen and everything, the power LED even starts pulsing, then after a second it turns back on again.
I’m running Pop!_OS 22.04 LTS (yes, I know it’s not officially supported by Framework) using systemd and Wayland if relevant.
This just means that Framework support won’t be able to help you as much. PopOS is a pretty popular distro and has some good community support here.
Out of curiosity, have you tried testing your setup in a live usb of either of the officially supported distros? that would at least tell you if the problem is hardware or software.
I’ve just tried a fresh Live USB with Ubuntu 22.04 LTS running X and the issue is the exact same. As soon as all the lights turn off, the laptop turns back on again.
I also tried Windows 11 and there it seems to sleep properly, although as soon as I move the mouse, it wakes up from sleep. I think the second part is intended behavior but still.
The easiest answer is to unplug it before going into suspend. The more in-depth answer will be to dig into dmesg and journalctl to see why it is preventing suspend. Not much we can do here as we don’t have a means of providing support for various eGPUs out there at this time. But, the logs may shed some light on what is happening.
Appreciate the logs, unfortunately they refreshed to https://hastebin.skyra.pw/ and provided nothing in terms of the logs themselves.
Not much we can do here as we don’t have a means of providing support for various eGPUs out there at this time. Having the eGPU attached is going to interfere with suspend in this case.
After a bunch of scouring on old threads from Thinkpad users, a fix some people proposed was to disable ACPI wakeup for whatever device I had trouble with. I am not sure what all that stuff means, but after running lspci to get a list of my devices, I started disabling some one by one then trying to suspend. Almost lost hope until eventually after disabling one of them, the laptop wouldn’t wake back up! Great success!
sudo sh -c "echo TRP3 > /proc/acpi/wakeup" was what fixed my issue.
The dock in question is connected to top left USB-C slot.
In my case, TRP3 corresponded to device pci:0000:00:07.3.
After looking at lspci I could see that 00:07.3 corresponded with PCI bridge: Intel Corporation Alder Lake-P Thunderbolt 4 PCI Express Root Port #3 (rev 02)
Question - does the Framework laptop power cycle the ports when going to sleep?
I think the reason the dock keeps waking up the laptop is that whenever it senses power on the USB, it triggers a wake-up command (which I now ignore). Therefore, whenever the laptop would go to sleep, power would cut off then back on, thus making the dock trigger the wake-up signal.
The fix no longer seems to work. Same slot used for the dock. The setting I applied only works until the first full shutdown of the system. I tried to disable TRP3 again but it didn’'t sleep now. Also tried the other TRP devices with the same effect.
I think it’s a combination of devices that need to be disabled if I want sleep to work…