vcgencmd - Native Python binding for RaspberryPi vcgencmd command-line tool
Summary
'vcgencmd' is a command line tool designed by Broadcom used on the Raspberry Pi. This Python package is a native binding to that tool. Currently only a portion of the 'vcgencmd' command line tool is supported.
Install
vcgencmd is compatible with both Python2.7+ and Python3.x. The raspberry pi I
have has python 3.2 installed. These instructions will be for that. You can
substitute the python and pip commands accordingly for other versions.
The installer requires the setuptools
package.
Requirements
Pip (Python 3 version):
sudo apt-get install python3-pip
Setuptools (Python 3 version):
sudo pip-3.2 install setuptools
Python package manager (PIP)
Install globally:
sudo pip-3.2 install git+https://github.com/nicmcd/vcgencmd.git
Install locally:
pip-3.2 install --user git+https://github.com/nicmcd/vcgencmd.git
Source installation
Install globally:
sudo python3 setup.py install
Install locally:
python3 setup.py install --user
Uninstall
sudo pip-3.2 uninstall vcgencmd
Test/Command-Line
nic@raspberrypi:/tmp$ python3 -m vcgencmd
Clock Frequencies (Hz):
arm : 700000000
core : 250000000
h264 : 250000000
isp : 250000000
v3d : 250000000
uart : 3000000
pwm : 0
emmc : 250000000
pixel : 25200000
vec : 0
hdmi : 163683000
dpi : 0
Voltages (V):
core : 1.2
sdram_c : 1.2
sdram_i : 1.2
sdram_p : 1.225
Temperatures (C):
: 37.9
Codecs Enabled:
h264 : False
mpg2 : False
wvc1 : False
mpg4 : False
mjpg : False
wmv9 : False
Memory Allocation (bytes):
arm : 469762048
gpu : 67108864
Usage
nic@raspberrypi:/tmp$ python3
Python 3.2.3 (default, Mar 1 2013, 11:53:50)
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import vcgencmd
>>> vcgencmd.frequency_sources()
['arm', 'core', 'h264', 'isp', 'v3d', 'uart', 'pwm', 'emmc', 'pixel', 'vec', 'hdmi', 'dpi']
>>> vcgencmd.measure_clock('arm')
700000000
>>> vcgencmd.measure_clock('hdmi')
163682000
>>> vcgencmd.voltage_sources()
['core', 'sdram_c', 'sdram_i', 'sdram_p']
>>> vcgencmd.measure_volts('core')
1.2
>>> vcgencmd.measure_volts('sdram_p')
1.225
>>> vcgencmd.measure_temp()
38.5
>>> vcgencmd.codec_sources()
['h264', 'mpg2', 'wvc1', 'mpg4', 'mjpg', 'wmv9']
>>> vcgencmd.codec_enabled('mpg4')
False
>>> vcgencmd.memory_sources()
['arm', 'gpu']
>>> vcgencmd.get_mem('arm')
469762048
>>>