Raspberry Pi

From ArchWiki
Revision as of 21:47, 7 April 2013 by Graysky (Talk | contribs) (added preface)

Jump to: navigation, search

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki - This article is not meant to be an exhaustive setup guide and assumes that the reader has setup an Arch system before. Arch newbies are encouraged to read the Beginners'_Guide if unsure how to preform standard tasks such as creating users, managing the system, etc. RPi Config - Excellent source of info relating to under-the-hood tweaks. Template:Article summary end

Article Preface

Note: Support for the ARM architecture is provided on http://archlinuxarm.org/
Note: Posts to the official Arch Linux Forum related to ARM specific issues will be promptly closed.

Installing Arch Linux ARM

See the archlinuxarm documentation.


Note: The requisite module snd-bcm2835 should be autoloaded by default.

Install the needed packages:

pacman -S alsa-utils alsa-firmware alsa-lib alsa-plugins

Optionally adjust the default volume using `alsamixer` and ensure that the sole source "PCM" is not muted (denoted by double MM if muted).

Select an audio source for output:

amixer cset numid=3 x

Where 'x' corresponds to:

  • 0 for Auto
  • 1 for Headphones
  • 3 for HDMI

Caveats for HDMI Audio

Some applications require a setting in /boot/config.txt to force audio over HDMI:


Onboard Hardware Sensors


Temperatures sensors for the board itself are including as part of the raspberrypi-firmware-tools package. the RPi offers a sensor of the BCM2835 SoC (CPU/GPU):

/opt/vc/bin/vcgencmd measure_temp

Alternatively, simply read from the filesystem:

% cat /sys/class/thermal/thermal_zone0/temp                


Four different voltages can be monitored via /opt/vc/bin/vcgencmd as well:

% /opt/vc/bin/vcgencmd measure_volts <id>
  • core for core voltage
  • sdram_c for sdram Core voltage
  • sdram_i for sdram I/O voltage
  • sdram_p for sdram PHY voltage


The Raspberry Pi can be overclocked by editing /boot/config.txt, for example:


The optional xxx_min lines define the min usage of their respective settings. When the system is not under load, the values will drop down to those specified. Consult the [Overclocking] article on elinux for additional options and examples.

A reboot is needed for new settings to take effect.

Note: The overclocked setting for CPU clock applies only when the governor throttles up the CPU, i.e. under load.

Users may query the current frequency of the CPU via this command:

cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

Serial Console

Edit the default /boot/cmdline.txt

Change loglevel to 5 to see boot messages


Change speed from 115200 to 38400

console=ttyAMA0,38400 kgdboc=ttyAMA0,38400

Start getty service

systemctl start getty@ttyAMA0

Enable on boot

systemctl enable getty@ttyAMA0.service

Creating the proper service link:

ln -s /usr/lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@ttyAMA0.service

Then connect :)

screen /dev/ttyUSB0 38400


pacman -S xf86-video-fbdev

Adjustments are likely required to correct proper overscan/underscan and are easily achieved in boot/config.txt in which many tweaks are set. To fix, simply uncomment the corresponding lines and setup per the commented instructions:

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border

Users wishing to use the analog video out should consult this config file which contains options for non-NTSC outputs.

A reboot is needed for new settings to take effect.