diff options
author | Paul Oliver <contact@pauloliver.dev> | 2025-03-06 21:12:53 +0000 |
---|---|---|
committer | Paul Oliver <contact@pauloliver.dev> | 2025-03-06 21:12:53 +0000 |
commit | 0be7f1274e0cb8406bd4262b86d5e2e9dda77d7a (patch) | |
tree | 5cb1a7723b7ccd8e79ed75ea694d1e48e3b436a9 /README.md | |
parent | e586927bdeef9d1d59f464c0fed86977ec9fd6c4 (diff) |
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 48 |
1 files changed, 40 insertions, 8 deletions
@@ -5,26 +5,58 @@ Experimental control software for robotics, tested on Raspberry Pi 5. To configure the system, the files in the `sysconf` directory must be installed: -1. Copy the UDEV `*.rule` files into `/etc/udev/rules.d`. -2. Copy `config.txt` to `/boot`. -3. Reboot the Raspberry Pi for the changes to take effect. +1. Copy the UDEV `*.rule` files into `/etc/udev/rules.d` +2. Copy `config.txt` to `/boot` +3. Reboot the Raspberry Pi for the changes to take effect + +## Low Power Consumption When Powered Off: +By default, the Raspberry Pi 5 keeps the SoC powered on (in a shutdown state) +even after the system is shut down. As a result, it continues to consume +1.2-1.6W of power, even with nothing plugged in except for power. For more +details, see: +[Reducing Raspberry Pi 5's Power Consumption](https://www.jeffgeerling.com/blog/2023/reducing-raspberry-pi-5s-power-consumption-140x) + +This can be easily fixed by editing the EEPROM configuration with the +following command: +```console +user@alarm$ sudo rpi-eeprom-config -e +``` +Ensure that `POWER_OFF_ON_HALT=1` is set, while leaving the other variables +unchanged: +```config +[all] +BOOT_UART=[...] +POWER_OFF_ON_HALT=1 +BOOT_ORDER=[...] +``` + +To run `rpi-eeprom-config` on Arch Linux, you’ll need to install the +`rpi5-eeprom` package from the `PKGBUILDs` repository. Run the following +commands to do so: +```console +user@alarm$ git clone https://github.com/archlinuxarm/PKGBUILDs +user@alarm$ cd PKGBUILDs/alarm/rpi-eeprom +user@alarm$ makepkg -s +user@alarm$ sudo pacman -U rpi5-eeprom-*.pkg.tar.xz +``` ## GPIO and PWM Access Without Root: To enable GPIO and PWM access without root privileges on the Raspberry Pi 5, follow these steps: -1. Create two new user groups: `gpiod` and `pwm`. -2. Add your user to both groups. +1. Create two new user groups: `gpiod` and `pwm` +2. Add your user to both groups 3. The UDEV rules installed previously will grant the `gpiod` and `pwm` user -groups permission to access the respective subsystems. + groups permission to access the respective subsystems. This configuration ensures that GPIO and PWM operations can be performed without needing root access. ## Build Instructions: 1. Install [`stack`](https://docs.haskellstack.org/en/stable/). It’s -recommended to use [`ghcup`](https://www.haskell.org/ghcup/) for installation. -2. Run `stack build` to compile the libraries and executables. + recommended to use [`ghcup`](https://www.haskell.org/ghcup/) for + installation. +2. Run `stack build` to compile the libraries and executables > Note: You may need to install system dependencies on your host first (e.g., > `libgpiod`, etc.) |