|
|
(9 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) |
Linha 1: |
Linha 1: |
| == Configuração ==
| | Documentação migrada para wiki Funtoo: |
| Exibe quantidade de memória dedicada ao sistema operacional e ao vídeo:
| |
| vcgencmd get_mem arm && vcgencmd get_mem gpu
| |
|
| |
|
| Exibe a frequência (clock):
| | https://www.funtoo.org/Raspberry_Pi_Userland_(VCGENCMD) |
| for src in arm core h264 isp v3d uart pwm emmc pixel vec hdmi dpi ; do echo -e "$src:\t$(vcgencmd measure_clock $src)" ; done
| |
| | |
| == Versão ==
| |
| Exibe versão da firmware:
| |
| vcgencmd version
| |
| | |
| == Tensão ==
| |
| for id in core sdram_c sdram_i sdram_p ; do echo -e "$id:\t$(vcgencmd measure_volts $id)" ; done
| |
| | |
| == Temperatura ==
| |
| vcgencmd measure_temp
| |
| | |
| == Codecs ==
| |
| Mostra se o codec especificado está ativado, o codec pode ser um dos H264, MPG2, WVC1, MPG4, MJPG, WMV9. Por favor note que este foi executado em um Pi com as licenças MPG2 e VC1 ativadas.
| |
| for codec in H264 MPG2 WVC1 MPG4 MJPG WMV9 ; do echo -e "$codec:\t$(vcgencmd codec_enabled $codec)" ; done
| |
| | |
| == Análise de desempenho ==
| |
| Meça a temperatura, e cause um "stress" para mensurar a dissipação de calor:
| |
| vcgencmd measure_temp && stress --cpu 1 -t 300 && vcgencmd measure_temp
| |
| | |
| Você pode notar que "sapecar" o processador aumenta a temperatura, porém não chega nem perto dos 80ºC. Eu sempre compilo bastante coisa em paralelo de forma distribuída com hosts x86_64 ou outros raspberry's do cluster.
| |
| | |
| === 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
| |
| | |
| <pre>
| |
| #!/bin/sh
| |
| # This script reads the Broadcom SoC temperature value and shuts down if it
| |
| # exceeds a particular value.
| |
| # 80ºC is the maximum allowed for a Raspberry Pi.
| |
| | |
| # Get the reading from the sensor and strip the non-number parts
| |
| SENSOR="$(vcgencmd measure_temp | cut -d "=" -f2 | cut -d "'" -f1)"
| |
| # -gt only deals with whole numbers, so round it.
| |
| TEMP="$(printf "%.0f\n" ${SENSOR})"
| |
| # How hot will we allow the SoC to get?
| |
| MAX="78"
| |
| | |
| if [ "${TEMP}" -gt "${MAX}" ] ; then
| |
| # This will be mailed to root if called from cron
| |
| echo "${TEMP}ºC is too hot!"
| |
| # Send a message to syslog
| |
| /usr/bin/logger "Shutting down due to SoC temp ${TEMP}."
| |
| # Halt the box
| |
| /sbin/shutdown -h now
| |
| else
| |
| exit 0
| |
| fi
| |
| </pre>
| |
| | |
| 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
| |
| | |
| | |
| | |
| | |
| | |
| Referências:
| |
| http://elinux.org/RPI_vcgencmd_usage
| |
| | |
| | |
| [[Categoria:HardwareOpensource]]
| |
| [[Categoria:SoftwareOpensource]]
| |
| [[Categoria:Linux]]
| |
| [[Categoria:KnowledgeBase]]
| |