deepcool-digital.service as it is currently provided in README fails to start when waking up from a suspended state, such as sleep.
The following log is generated upon waking up:
Oct 22 14:56:37 workstation-pc systemd[1]: Started deepcool-digital.service - DeepCool Digital CPU Monitor.
Oct 22 14:56:37 workstation-pc deepcool-digital-linux[19117]: --- Deepcool Digital Linux ---
Oct 22 14:56:37 workstation-pc deepcool-digital-linux[19117]: CPU MON.: AMD Ryzen 7 5800X 8-Core Processor
Oct 22 14:56:37 workstation-pc deepcool-digital-linux[19117]: GPU MON.: none
Oct 22 14:56:37 workstation-pc deepcool-digital-linux[19117]: -----
Oct 22 14:56:37 workstation-pc deepcool-digital-linux[19117]: Error! No DeepCool device was found
Oct 22 14:56:37 workstation-pc systemd[1]: deepcool-digital.service: Main process exited, code=exited, status=1/FAILURE
Oct 22 14:56:37 workstation-pc systemd[1]: deepcool-digital.service: Failed with result 'exit-code'.
One solution that worked for me is to add StartLimitIntervalSec, StartLimitBurst and Restart=on-failure to the service. With this, the service usually starts after 1 service restart.
To clarify, I'm using another service to 'start' the service after waking up:
[Unit]
Description=Restarts DeepCool Digital service after waking up from suspended state
After=sleep.target
After=suspend.target
After=hibernate.target
[Service]
Type=oneshot
ExecStart=/bin/systemctl --no-block restart deepcool-digital.service
[Install]
WantedBy=sleep.target
WantedBy=suspend.target
WantedBy=hibernate.target
deepcool-digital.service as it is currently provided in README fails to start when waking up from a suspended state, such as sleep.
The following log is generated upon waking up:
One solution that worked for me is to add
StartLimitIntervalSec,StartLimitBurstandRestart=on-failureto the service. With this, the service usually starts after 1 service restart.To clarify, I'm using another service to 'start' the service after waking up: