With the device being in sleep mode, calling the number of the SIM inserted in the device, the device should lighten up the screen and ring.
What's the current behaviour?
The device does not lighten up the screen and ring, so you are not notified about an incoming call. However, if you turn on the screen, you can see and hear the call notification.
How to reproduce your issue?
make sure your device has a SIM card inserted and is operational, i.e. by checking that outgoing calls work.
hit the power button and leave the device alone for aprox 5 minutes
call the number of the SIM card that is in the device from another device
What device are you using?
samsung-serranovelte
On what postmarketOS version did you encounter the issue?
Can you check dmesg and see if the device was in suspend at that time? Suspend is not really properly supported at the moment so it would be better to disable that in the settings (don't know exactly where the setting is).
There are various crashes/backtraces logged in dmesg so it was not trivial to see the suspend messages for me. However, I disabled suspend ind plasmamobile via
Settings -> Energy Settings
And changed "suspend session" from "5 minutes" to "never". However, this setting does not seem to work - when I reopen it, it says again "5 minutes".
Before the suspend kicks in the call notification works fine, but not after. I will probably try with phosh to see if it behaves differently there.
What I noticed as well is that missed calls don't get recorded in the call history, but I guess this should be discussed in a separate issue.
And changed "suspend session" from "5 minutes" to "never". However, this setting does not seem to work - when I reopen it, it says again "5 minutes".
Having a brief look, I see the same behaviour. I'm on edge channel (although not updated for a while), plasma-mobile, samsung-serranovelte. In edge it's in Settings -> Screen. Changing Suspend Session to never, leaving Settings and entering again, it's still on 5 mins. I guess this is an issue in plasma-mobile. I don't have much experience with plasma-mobile, though.
One more thing that I noticed - and I am seeing this with phosh now as well: When I put the device to sleep, the backlight of the sensor keys stays on but it seems to go off after a while. After it is off, it does not turn on anymore.
I will continue testing for ringing using phosh once the device had some sleep.
One more thing that I noticed - and I am seeing this with phosh now as well: When I put the device to sleep, the backlight of the sensor keys stays on but it seems to go off after a while. After it is off, it does not turn on anymore.
We disabled it completely in !2330 (merged) (cc @Jakko) but this change is probably not present in v21.06 at the moment.
In the current stable releases, the leds of the tm2-touchkeys go off when the phone enters suspend. So as a side effect, this is kind of a visual confirmation that the phone is in suspend mode. However, after resume they stay off. They can be manually turned on again by echo 1 | sudo tee /sys/class/leds/tm2-touchkey/brightness.
In channel edge and future stable releases (for the time being), they will be disabled by default by the file /lib/udev/rules.d/20-tm2-touchkey-leds.rules. This "new" default can be changed back to the "current stable" default by coping the file 20-tm2-touchkey-leds.rules to /etc/udev/rules.d and set echo to 1 (raising the number in the file name is actually not needed).
I was able to reproduce the same issue with phosh as well, so it doesn't seem to be a ui-specific but is probably rather device-(family)-specific. I have a motorola-harpia here as well - would it be worth re-testing there?
One more note: The unanswered (because unnoticed) call does not appear in the missed calls list in phosh either.
Result from an "alarm clock test" using phosh: The alarm did not ring until I turned on the phone/display manually. Therefore, I assume this issue is related more to the suspend mode than to the modem.
But as I mentioned, suspend isn't tested very well (nor very beneficial) atm, it needs more work. Probably better to disable it for now (if you manage to figure out how to prevent Plasma Mobile/Phosh from doing that).
Yes, I also suggest to disable suspend. At least for Phosh, on samsung-serranovelte, power consumtion seems to be similar both in suspend or just locked screen. (Unfortunately in both cases lasting not very long, max. 1 day on my device.)
To disable suspend:
In Phosh this can be done in Settings -> Power -> Automatic Suspend -> ...
In plasma-mobile, I have the same problem as you that the changes on the suspend time is not applied. As mentioned further above, to me this seems to be a plasma-mobile issue.
It's not really an issue but more a missing feature. Since there are various optimizations missing that would make suspend worthwhile I didn't really bother spending time testing it yet. It should be the same "problem" on all MSM8916-based devices.
Thank you - I am about to test whether the reported problems go away with suspsend disabled on v21.06 and will report back.
Regarding the support status of the suspend feature:
But as I mentioned, suspend isn't tested very well (nor very beneficial) atm, it needs more work. Probably better to disable it for now (if you manage to figure out how to prevent Plasma Mobile/Phosh from doing that).
Personally, I think that in this case - at least for the stable branch - it would make absolutely sense to disable suspend by default. If it does not work reliable and is not beneficial this negatively impacts the experience for first time users. Especially for a community device, I find delivering a good first time experience (without having to change "bad" defaults) important.
Once suspend is working reliable and is beneficial there is nothing against re-enabling it. But not at this stage.
Personally, I think that in this case - at least for the stable branch - it would make absolutely sense to disable suspend by default. If it does not work reliable and is not beneficial this negatively impacts the experience for first time users. Especially for a community device, I find delivering a good first time experience (without having to change "bad" defaults) important.
Makes sense. Contributions welcome (I have no idea how to disable it by default). :)
I suggest to have a "one-time-script" that gets executed after the first successful login that is empty by default but can be extended with device-specific quirks (such as this one here). Should I create a separate issue for this?
Disabling suspend is handled differently in every user interface, I guess. I would prefer config files over scripts. Although I don't have much experience on this. Anyway, we can try to work something out.
For example, one config file for each user interface. In the APKBUILD file an install_if for every user interface. Hm, that would mean several subpackages, one for each user interface. That sounds a bit ugly... but it would work.
Concerning the config files:
For Phosh I expect to find the config in the gsettings system. To find the right key, gsettings list-recursively is a good start, grepping for some keyowrd, e.g. gsettings list-recursively | grep -i power. It looks like the corresponding keys are org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type and org.gnome.settings-daemon.plugins.power sleep-inactive-battery-timeout, the latter seems to be in seconds. To list possible values, using range like gsettings range org.gnome.settings-daemon.plugins.power sleep-inactive-battery-type returns some information. In this case, to disable it, 'nothing' would be the right one. The following links are some examples how this could be implemented. Intrestingly, these examples seem to disable suspend when the device is charging (btw this doesn't apply to samsung-serranovelte as the diver rt5033-charger does not exist yet). It could be done the same way to disable suspend when the device is on battery.
One thing that bothers me is the question whether implementing UI-specific in package soc-qcom-msm8916 is probably making it hard for others to find out where these configs come from. Maybe the approach should be differently: Adding those config files to the postmarketos-ui-... packages and add an install_if="$pkgname soc-qcom-msm8916". I guess this again requires a subpackage (https://wiki.alpinelinux.org/wiki/APKBUILD_Reference#install_if). So e.g. a subpackage for Phosh would then be named like postmarketos-ui-phosh-soc-qcom-msm8916, maybe shortened to postmarketos-ui-phosh-msm8916.
Currently I don't see an easy solution. The above approach would be possible but is quite complicated.
I suggest to post a small chapter on suspend into the wiki (article Qualcomm Snapdragon 410/412) and closing this issue. (I could post the information to the wiki next week.)