The following is helpful if you purchased the RemotePi addon board for your raspberry pi that provides IR Remote control and a Power button.

Instructions for RemotePi install on Raspberry Pi OSMC
Source: https://www.msldigital.com/pages/shutdown-scripts-for-osmc

Log in using SSH

The default SSH user name for OSMC is osmc, password osmc

cd /etc
sudo nano irswitch.sh

Copy and paste the following text into the editor window
====================BELOW=THIS=LINE=====================
#!/bin/bash
# this is the GPIO pin receiving the shut-down signal
GPIOpin1=14
echo "$GPIOpin1" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio$GPIOpin1/direction
while true; do
  sleep 1
  power=$(cat /sys/class/gpio/gpio$GPIOpin1/value)
  if [ $power != 0 ]; then
    sudo systemctl stop mediacenter
    echo "out" > /sys/class/gpio/gpio$GPIOpin1/direction
    echo "1" > /sys/class/gpio/gpio$GPIOpin1/value
    sleep 3
    sudo shutdown -h now
  fi
done
====================ABOVE=THIS=LINE=====================
Press ctrl+x to exit, y to confirm, enter to save the file

sudo chmod +x irswitch.sh

The above RemotePi Board shutdown script needs to be registered as a service
cd /etc/systemd/system
sudo nano irswitch.service

Copy and paste the following text into the editor window
====================BELOW=THIS=LINE=====================
[Unit]
Description=RemotePi Service
After=systemd-modules-load.service
[Service]
Type=simple
ExecStart=/etc/irswitch.sh
[Install]
WantedBy=multi-user.target
====================ABOVE=THIS=LINE=====================
Press ctrl+x to exit, y to confirm, enter to save the file

sudo systemctl enable irswitch.service

The following additional script enables the RemotePi Board to cut off the power, after OSMC has been shut down from the on-screen menu.

sudo nano /etc/shutdown.sh

Copy and paste the following contents
====================BELOW=THIS=LINE=====================
#!/bin/bash
REBOOT_GREP=$(systemctl list-units --type=target | grep reboot)
SHUTDOWN_GREP=$(systemctl list-units --type=target | grep shutdown)
if [ "$SHUTDOWN_GREP" ] && [ ! "$REBOOT_GREP" ]; then
  # the condition above makes sure, that the shutdown sequence is not run on reboot 
  GPIOpin=15
  GPIOpin1=14
  echo "$GPIOpin" > /sys/class/gpio/export
  echo "out" > /sys/class/gpio/gpio$GPIOpin/direction
  echo "1" > /sys/class/gpio/gpio$GPIOpin/value
  sleep 0.125
  echo "0" > /sys/class/gpio/gpio$GPIOpin/value
  sleep 0.2
  echo "1" > /sys/class/gpio/gpio$GPIOpin/value
  sleep 0.4
  echo "0" > /sys/class/gpio/gpio$GPIOpin/value
  echo "$GPIOpin1" > /sys/class/gpio/export
  echo "out" > /sys/class/gpio/gpio$GPIOpin1/direction
  echo "1" > /sys/class/gpio/gpio$GPIOpin1/value
  sleep 4
fi
====================ABOVE=THIS=LINE=====================
Press ctrl+x to exit, y to confirm, enter to save the file

After saving the file, mark it as executable with:
sudo chmod +x /etc/shutdown.sh

sudo nano /etc/systemd/system/irswitch2.service

Copy and paste the following text into the editor window
====================BELOW=THIS=LINE=====================
[Unit]
Description=RemotePi Board Shutdown Service
Before=multi-user.target
Conflicts=shutdown.target
[Service]
ExecStart=/bin/true
ExecStop=/etc/shutdown.sh
Type=oneshot
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
====================ABOVE=THIS=LINE=====================
Press ctrl+x to exit, y to confirm, enter to save the file

sudo systemctl enable irswitch2.service

Reboot one time
After reboot you can use the RemotePi Board to power cycle OSMC

Leave a Reply

Your email address will not be published. Required fields are marked *