CoolerMasterTechnology / Pi-Tool

Overclocking and button-remapping utility for the Raspberry Pi 4, designed for Pi Case 40
GNU General Public License v3.0
196 stars 18 forks source link

Does the daemon need to be running? #4

Closed ifohancroft closed 3 years ago

ifohancroft commented 3 years ago

Does the daemon need to be constantly running in the backend or can the tool allow overclocking and/or remapping of the button that works without having to have the daemon running?

mntns commented 3 years ago

Hi! Yes, the daemon needs to be constantly running, as it listens for button presses, makes the corresponding button actions happening and relays the collected monitoring measurements to the Pi Tool UI. Having the daemon as systemd service also enables it to have the proper system permissions for reading the button state and editing the /boot/config.txt file, all while the Pi Tool itself can be run as normal user.

In case you are concerned about the resource usage: The daemon should have a negligible effect on that compared to the Pi Tool UI (when it is shown). I hope this answers your question.

ifohancroft commented 3 years ago

Thank you! It does answer my question. I don't have any concerns, I was just curious. With it requiring the daemon to be running - how does the button work for power on when the Raspberry Pi is off (say I go into the terminal into the OS and type shutdown)?

mntns commented 3 years ago

You're welcome!

The wake-up functionality is a feature of the Pi itself. When you press the button on a Pi that is in its halt state, pin 5 is pulled to ground (pin 6) which wakes up the Pi. This option is called WAKE_ON_GPIO in the Pi's bootloader and is enabled by default in all newer models. When the Pi is running, pin 5 is accessible via the GPIO Sysfs interface in Linux and can then be used by the Pi Tool.

ifohancroft commented 3 years ago

Thanks a lot! That's awesome!