[SOLVED] Button not working

Hi,
there’s no way to use the button on my Pi4, with Raspian 12 and pisound-btn 1.15-2

systemctl status pisound-btn :

pisound-btn.service - Pisound button daemon autostart
     Loaded: loaded (/lib/systemd/system/pisound-btn.service; enabled; preset: enabled)
     Active: failed (Result: exit-code) since Thu 2024-09-12 14:04:53 CEST; 11min ago
   Duration: 130ms
    Process: 633 ExecStart=/usr/bin/pisound-btn (code=exited, status=255/EXCEPTION)
   Main PID: 633 (code=exited, status=255/EXCEPTION)
        CPU: 13ms

Sep 12 14:04:53 raspberrypi systemd[1]: Started pisound-btn.service - Pisound button daemon autostart.
Sep 12 14:04:53 raspberrypi systemd[1]: pisound-btn.service: Main process exited, code=exited, status=255/EXCEPTION
Sep 12 14:04:53 raspberrypi pisound-btn[633]: Failed writing to /sys/class/gpio/export! Error 22.
Sep 12 14:04:53 raspberrypi systemd[1]: pisound-btn.service: Failed with result 'exit-code'.

cat /sys/kernel/debug/gpio :

gpiochip0: GPIOs 512-569, parent: platform/fe200000.gpio, pinctrl-bcm2711:
 gpio-512 (ID_SDA              )
 gpio-513 (ID_SCL              )
 gpio-514 (GPIO2               )
 gpio-515 (GPIO3               )
 gpio-516 (GPIO4               )
 gpio-517 (GPIO5               )
 gpio-518 (GPIO6               )
 gpio-519 (GPIO7               |spi0 CS1            ) out hi ACTIVE LOW
 gpio-520 (GPIO8               |spi0 CS0            ) out hi ACTIVE LOW
 gpio-521 (GPIO9               )
 gpio-522 (GPIO10              )
 gpio-523 (GPIO11              )
 gpio-524 (GPIO12              |reset               ) out hi 
 gpio-525 (GPIO13              |osr                 ) out hi 
 gpio-526 (GPIO14              )
 gpio-527 (GPIO15              )
 gpio-528 (GPIO16              |osr                 ) out lo 
 gpio-529 (GPIO17              )
 gpio-530 (GPIO18              )
 gpio-531 (GPIO19              )
 gpio-532 (GPIO20              )
 gpio-533 (GPIO21              )
 gpio-534 (GPIO22              )
 gpio-535 (GPIO23              )
 gpio-536 (GPIO24              |reset               ) out hi 
 gpio-537 (GPIO25              |data_available      ) in  lo IRQ 
 gpio-538 (GPIO26              |osr                 ) out lo 
 gpio-539 (GPIO27              )
 gpio-540 (RGMII_MDIO          )
 gpio-541 (RGMIO_MDC           )
 gpio-542 (CTS0                )
 gpio-543 (RTS0                )
 gpio-544 (TXD0                )
 gpio-545 (RXD0                )
 gpio-546 (SD1_CLK             )
 gpio-547 (SD1_CMD             )
 gpio-548 (SD1_DATA0           )
 gpio-549 (SD1_DATA1           )
 gpio-550 (SD1_DATA2           )
 gpio-551 (SD1_DATA3           )
 gpio-552 (PWM0_MISO           )
 gpio-553 (PWM1_MOSI           )
 gpio-554 (STATUS_LED_G_CLK    |ACT                 ) out lo 
 gpio-555 (SPIFLASH_CE_N       )
 gpio-556 (SDA0                )
 gpio-557 (SCL0                )
 gpio-558 (RGMII_RXCLK         )
 gpio-559 (RGMII_RXCTL         )
 gpio-560 (RGMII_RXD0          )
 gpio-561 (RGMII_RXD1          )
 gpio-562 (RGMII_RXD2          )
 gpio-563 (RGMII_RXD3          )
 gpio-564 (RGMII_TXCLK         )
 gpio-565 (RGMII_TXCTL         )
 gpio-566 (RGMII_TXD0          )
 gpio-567 (RGMII_TXD1          )
 gpio-568 (RGMII_TXD2          )
 gpio-569 (RGMII_TXD3          )

gpiochip1: GPIOs 570-577, parent: platform/soc:firmware:gpio, raspberrypi-exp-gpio, can sleep:
 gpio-570 (BT_ON               |shutdown            ) out hi 
 gpio-571 (WL_ON               )
 gpio-572 (PWR_LED_OFF         |PWR                 ) out lo ACTIVE LOW
 gpio-573 (GLOBAL_RESET        )
 gpio-574 (VDD_SD_IO_SEL       |vdd-sd-io           ) out hi 
 gpio-575 (CAM_GPIO            |cam1_regulator      ) out lo 
 gpio-576 (SD_PWR_ON           |regulator-sd-vcc    ) out hi 
 gpio-577 (SD_OC_N             )

Any idea?

thanks

Try upgrading to pisound-btn 1.16-1, these commands should do it:

sudo apt update
sudo apt install pisound-btn

The GPIO pin numberings changed in more recent kernel versions, so the pisound-btn must be updated accordingly.

Hi, I upgraded everything but it is still on 1.15-2,
How to force the 1.16?

You must be on an earlier Debian release.

In that case, you may try installing from source code. First install dependencies:

sudo apt install libgpiod-dev

Then get the source code, compile and install:

git clone https://github.com/BlokasLabs/pisound
cd pisound/pisound-btn
make
sudo make install-local

many thanks,
It’s still not working!
now I have installed the 1.16 version and the two leds blink when I push it but still not working (it supposed to shutdown after 3 secs. holding).

pisound-btn.service - Pisound button daemon autostart
     Loaded: loaded (/lib/systemd/system/pisound-btn.service; enabled; preset: enabled)
     Active: active (running) since Thu 2024-09-12 15:14:23 CEST; 3min 58s ago
   Main PID: 625 (pisound-btn)
      Tasks: 1 (limit: 3911)
        CPU: 1.597s
     CGroup: /system.slice/pisound-btn.service
             └─625 /usr/local/bin/pisound-btn

Sep 12 15:16:08 raspberrypi sudo[3581]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Sep 12 15:16:08 raspberrypi sudo[3581]: pam_unix(sudo:session): session closed for user root
Sep 12 15:16:09 raspberrypi sudo[3604]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/sh -c 'echo 10 > /sys/kernel/pisound/led'
Sep 12 15:16:09 raspberrypi sudo[3604]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Sep 12 15:16:09 raspberrypi sudo[3604]: pam_unix(sudo:session): session closed for user root
Sep 12 15:16:10 raspberrypi sudo[3625]:     root : PWD=/ ; USER=root ; COMMAND=/usr/bin/sh -c 'echo 10 > /sys/kernel/pisound/led'
Sep 12 15:16:10 raspberrypi sudo[3625]: pam_unix(sudo:session): session opened for user root(uid=0) by (uid=0)
Sep 12 15:16:10 raspberrypi sudo[3625]: pam_unix(sudo:session): session closed for user root
Sep 12 15:16:10 raspberrypi pisound-btn[625]: script = '/usr/local/pisound/scripts/pisound-btn/system/up.sh', args = ''
Sep 12 15:16:10 raspberrypi pisound-btn[625]: script = '/usr/local/pisound/scripts/pisound-btn/do_nothing.sh', args = ''

and

gpiochip0: GPIOs 512-569, parent: platform/fe200000.gpio, pinctrl-bcm2711:
 gpio-512 (ID_SDA              )
 gpio-513 (ID_SCL              )
 gpio-514 (GPIO2               )
 gpio-515 (GPIO3               )
 gpio-516 (GPIO4               )
 gpio-517 (GPIO5               )
 gpio-518 (GPIO6               )
 gpio-519 (GPIO7               |spi0 CS1            ) out hi ACTIVE LOW
 gpio-520 (GPIO8               |spi0 CS0            ) out hi ACTIVE LOW
 gpio-521 (GPIO9               )
 gpio-522 (GPIO10              )
 gpio-523 (GPIO11              )
 gpio-524 (GPIO12              |reset               ) out hi 
 gpio-525 (GPIO13              |osr                 ) out hi 
 gpio-526 (GPIO14              )
 gpio-527 (GPIO15              )
 gpio-528 (GPIO16              |osr                 ) out lo 
 gpio-529 (GPIO17              |pisound-btn         ) in  hi IRQ ACTIVE LOW
 gpio-530 (GPIO18              )
 gpio-531 (GPIO19              )
 gpio-532 (GPIO20              )
 gpio-533 (GPIO21              )
 gpio-534 (GPIO22              )
 gpio-535 (GPIO23              )
 gpio-536 (GPIO24              |reset               ) out hi 
 gpio-537 (GPIO25              |data_available      ) in  lo IRQ 
 gpio-538 (GPIO26              |osr                 ) out lo 
 gpio-539 (GPIO27              )
 gpio-540 (RGMII_MDIO          )
 gpio-541 (RGMIO_MDC           )
 gpio-542 (CTS0                )
 gpio-543 (RTS0                )
 gpio-544 (TXD0                )
 gpio-545 (RXD0                )
 gpio-546 (SD1_CLK             )
 gpio-547 (SD1_CMD             )
 gpio-548 (SD1_DATA0           )
 gpio-549 (SD1_DATA1           )
 gpio-550 (SD1_DATA2           )
 gpio-551 (SD1_DATA3           )
 gpio-552 (PWM0_MISO           )
 gpio-553 (PWM1_MOSI           )
 gpio-554 (STATUS_LED_G_CLK    |ACT                 ) out lo 
 gpio-555 (SPIFLASH_CE_N       )
 gpio-556 (SDA0                )
 gpio-557 (SCL0                )
 gpio-558 (RGMII_RXCLK         )
 gpio-559 (RGMII_RXCTL         )
 gpio-560 (RGMII_RXD0          )
 gpio-561 (RGMII_RXD1          )
 gpio-562 (RGMII_RXD2          )
 gpio-563 (RGMII_RXD3          )
 gpio-564 (RGMII_TXCLK         )
 gpio-565 (RGMII_TXCTL         )
 gpio-566 (RGMII_TXD0          )
 gpio-567 (RGMII_TXD1          )
 gpio-568 (RGMII_TXD2          )
 gpio-569 (RGMII_TXD3          )

gpiochip1: GPIOs 570-577, parent: platform/soc:firmware:gpio, raspberrypi-exp-gpio, can sleep:
 gpio-570 (BT_ON               |shutdown            ) out hi 
 gpio-571 (WL_ON               )
 gpio-572 (PWR_LED_OFF         |PWR                 ) out lo ACTIVE LOW
 gpio-573 (GLOBAL_RESET        )
 gpio-574 (VDD_SD_IO_SEL       |vdd-sd-io           ) out hi 
 gpio-575 (CAM_GPIO            |cam1_regulator      ) out lo 
 gpio-576 (SD_PWR_ON           |regulator-sd-vcc    ) out hi 
 gpio-577 (SD_OC_N             )

The mappings may have changed, check that they are what you desire.

By default, it should shutdown after 5 second hold.

_Hello,
I remapped another time everything and now it works!
many thanks!

2 Likes