ferdium-app icon indicating copy to clipboard operation
ferdium-app copied to clipboard

Battery Drain in Deep Sleep with PID 1180(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock"

Open hirschferkel opened this issue 2 months ago • 3 comments

Avoid duplicates

  • [x] I agree to follow the Code of Conduct that this project adheres to.
  • [x] I have searched the issues tracker for a bug report similar to mine, in vain

Ferdium Version

Version: 7.1.1

What Operating System are you using?

macOS

Operating System Version

15.7.2 (24G317)

What arch are you using?

x64

Last Known Working Ferdium version

No response

Expected Behavior

No activity of Ferdium in deep sleep on OS X

Actual Behavior

Something causes Ferdium to drain my Macbook Battery completely. Do you know what to do?

2025-10-14 20:59:59 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b34 [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 20:59:59 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b38 [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:00:55 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b38 [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:00:55 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b3b [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:01:52 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b3b [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:01:52 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b3d [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:02:48 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b3d [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:02:48 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b43 [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:03:45 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b43 [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:03:45 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b47 [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:04:41 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b47 [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:04:41 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b4a [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:05:38 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b4a [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:05:38 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b4c [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:06:34 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b4c [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:06:34 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b4f [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:07:31 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b4f [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:07:31 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b54 [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:08:28 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b54 [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:08:28 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b58 [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:09:24 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b58 [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:09:24 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b5a [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:09:51 +0200 Assertions PID 68274(Ferdium) Summary NoDisplaySleepAssertion "Video Wake Lock" 00:00:26 id:0x0x500009b5a [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:10:21 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b5a [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:10:21 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b5d [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:11:18 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b5d [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:11:18 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b60 [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:12:14 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b60 [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:12:14 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b63 [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:13:11 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b63 [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:13:11 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b68 [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:14:07 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b68 [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:14:07 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b6a [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:15:04 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b6a [System: PrevIdle IntPrevDisp NetAcc kDisp] 2025-10-14 21:15:04 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009b6d [System: PrevIdle PrevDisp IntPrevDisp NetAcc kDisp] 2025-10-14 21:16:00 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:56 id:0x0x500009b6d [System: PrevIdle IntPrevDisp kDisp] 2025-10-14 21:16:00 +0200 Assertions PID 68274(Ferdium) Created NoDisplaySleepAssertion "Video Wake Lock" 00:00:00 id:0x0x500009bb2 [System: PrevIdle PrevDisp IntPrevDisp kDisp] 2025-10-14 21:16:18 +0200 Assertions PID 68274(Ferdium) Released NoDisplaySleepAssertion "Video Wake Lock" 00:00:17 id:0x0x500009bb2 [System: PrevIdle DeclUser IntPrevDisp kDisp] 2025-10-14 21:16:23 +0200 Assertions PID 71358(Software Update) Created MaintenanceWake "com.apple.SoftwareUpdate.PostLogout" 00:00:00 id:0x0xd00009c53 [System: PrevIdle DeclUser IntPrevDisp kDisp] 2025-10-14 21:16:56 +0200 Assertions PID 71358(Software Update) Released MaintenanceWake "com.apple.SoftwareUpdate.PostLogout" 00:00:33 id:0x0xd00009c53 [System: PrevDisp DeclUser IntPrevDisp kDisp]

Steps to reproduce

Just install Ferdium on OS X ...

Debug link

No response

Screenshots

No response

Additional information

No response

hirschferkel avatar Oct 15 '25 21:10 hirschferkel

I have seen happen as well. Usually related to a login page of a specific service. Ideally Ferdium should stop embedded websites from preventing screen from going dark.

alexg0 avatar Oct 18 '25 19:10 alexg0

Yeah I have just had the same thing recently, which under the hood comes from the fact that macOS doesn't actually go into deep sleep under some conditions (even closing the lid on my MBAir some apps keep running if I have a screen connected even it does not display anything). So I don't know how macOS actually tells an app that it is going to sleep, but Ferdium won't hibernate/stop a service that is playing a video/audio by default. This means that if the page you're on with your service has something akin to that, then it could very well keep Ferdium running, which will definitely drains the battery if the video is on loop.

I don't know if this is a more general problem on electron that does not stop the app from running when the OS tries to go to sleep, or if it is on our end to do it and regularly verify the state of the OS/listen to calls for sleep if that is possible (don't know what that would look like). So for now, the best is to figure out which service is the culprit (enabling the media play indicator for the ones you suspect can be useful) and see what pages can be problematic. I'll try to search for more information on my side, but not sure how we would deal with that.

Alphrag avatar Oct 18 '25 22:10 Alphrag

It even stops the display from turning off while "Video Wake Lock". So as I use Instagram and Linkedin - I guess it comes with Instagram - I do not see how to other deal with than to close Ferdium as a user. But this does not sound comfortable.

There should be a way to set Ferdium to a kind of "silent" mode during sleep, shouldn`t it?

hirschferkel avatar Oct 24 '25 09:10 hirschferkel