Raspberry Pi - Controlando a temperatura do Raspberry Pi

De Área31 Hackerspace

Controlando a temperatura do Raspberry Pi

Por questões de segurança, adicione um script que irá verificar a temperatura a cada 5 minutos e desligar o Raspberry Pi caso exceda 78ºC.

vi /usr/bin/tempcheck
#!/bin/sh
# Este script lê o valor da temperatura do SoC Broadcom e desliga se
# Exceder um determinado valor.
# 80 º C é o máximo permitido para um Raspberry Pi.

LOCK="/tmp/tempcheck.lock"
if [ -e ${LOCK} ]; then
        echo -e "Falha de checagem de temperatura do SoC. Outro processo encontra-se em execucao:\n\n"
        exit 1
fi

#####################################
# criando LOCK
touch ${LOCK}

# Transforma o valor lido em numero inteiro
SENSOR="$(vcgencmd measure_temp | cut -d "=" -f2 | cut -d "'" -f1 | cut -d '.' -f1)"
TEMP="$(printf "%.0f\n" ${SENSOR})"
# Define temperatura maxima suportada
MAX="78"

if [ "${TEMP}" -gt "${MAX}" ] ; then
        # Sera enviado um email para o root caso seja executado via cron
        echo "${TEMP}ºC is too hot!"
        # Registra um evento no log do sistema
        /usr/bin/logger "Shutting down due to SoC temp ${TEMP}."
        # Desliga o hardware
        rm ${LOCK}
        /sbin/shutdown -h now
else
        # Removendo lock
        rm ${LOCK}
        exit 0
fi


Dê permissão de execução:

chmod +x /usr/bin/tempcheck

Configure o Crontab para executar o script a cada 5 minutos:

*/5 *   *   *   *    /usr/bin/tempcheck