Difference between revisions of "Raspberry Pi"

From ArchWiki
Jump to: navigation, search
m (Audio)
(42 intermediate revisions by 17 users not shown)
Line 1: Line 1:
{{Note|Support for the ARM architecture is provided on http://archlinuxarm.org/ }}
+
[[Category:Getting and installing Arch]]
=Introduction=
+
{{Article summary start}}
 +
{{Article summary text|Raspberry Pi is a minimalist computer built for the [[Wikipedia:ARMv6|ARMv6 architecture]]. [http://www.raspberrypi.org/ More information about this project] and [http://uk.farnell.com/raspberry-pi technical specification].}}
 +
{{Article summary heading|Related}}
 +
{{Article summary wiki|Beginners%27_Guide}}
  
How mature is Raspberry Pi (RPI). A brief overview.
+
[http://elinux.org/RPiconfig RPi Config] - Excellent source of info relating to under-the-hood tweaks.
  
==What is Raspberry Pi==
+
[http://elinux.org/RPI_vcgencmd_usage RPi vcgencmd usage] - Overview of firmware command vcgencmd.
 +
{{Article summary end}}
  
It is a minimalist computer built for ARMv6 architecture. More information about this project can be found on http://www.raspberrypi.org/ and technical specification to: http://cz.farnell.com/raspberry-pi?ref=lookahead
+
== Article Preface ==
 +
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.
  
==Installing Arch Linux ARM==
+
{{Note|Support for the ARM architecture is provided on http://archlinuxarm.org not through posts to the official Arch Linux Forum.  Any posts related to ARM specific issues will be promptly closed per the [https://wiki.archlinux.org/index.php/Forum_Etiquette#Arch_Linux_Distribution_Support_ONLY Arch_Linux_Distrubution_Support_ONLY] policy.}}
  
In this manual will describe only essential moments for different RPI. Other procedures are the same instructions for ArchLinux. The only exception is the basic initialization and installation of equipment. It is further assumed that the configuration is performed on a machine running Archlinux.
+
== Installing Arch Linux ARM ==
  
==Backup Cards==
+
See the [http://archlinuxarm.org/platforms/armv6/raspberry-pi#qt-platform_tabs-ui-tabs2 archlinuxarm documentation].
If you own an official card provided with your RPI, for example http://cz.farnell.com/samsung/raspberry-pi-prog-4gb-sdcard/memory-sdcard-raspberry-pi-4gb/dp/2113756 recommend before installing Arch ARM Linux to backup using {{ic | dd}}. The path must be specified to the device {{ic | / dev / sdX}} not for another partition / dev/sdc1
+
  
# Dd if = / path / to / sdX of = / home / $ USER / backup_RPi.img
+
== Audio ==
 +
{{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
  
{{Note | There is a bit copy of the card. The resulting file is the same size as your card.}}
+
Optionally adjust the default volume using `alsamixer` and ensure that the sole source "PCM" is not muted (denoted by double MM if muted).
{{Note | card may not be installed.}}
+
{{Warning | Bad enter if and of prarmetru can damage your data.}}
+
  
==Installation==
+
Select an audio source for output:
 +
amixer cset numid=3 x
  
Installation is similar to backing card. Download the image file from Arch Linux ARM http://archlinuxarm.org/platforms/armv6/raspberry-pi
+
Where 'x' corresponds to:
Image copy using {{ic | dd}}.
+
*0 for Auto
 +
*1 for Analog out
 +
*3 for HDMI
  
# Dd bs = 1M if = / path / to / archlinux.img of = / dev / sdX
+
=== Caveats for HDMI Audio ===
 +
Some applications require a setting in {{ic|/boot/config.txt}} to force audio over HDMI:
 +
hdmi_drive=2
  
After inserting the card into the slot on the PPi should boot the base system Arch Linux ARM.
+
== Onboard Hardware Sensors ==
 +
=== Temperature ===
 +
Temperatures sensors for the board itself are including as part of the '''raspberrypi-firmware-tools''' package.  The RPi offers a sensor on the BCM2835 SoC (CPU/GPU):
  
==Home==
+
/opt/vc/bin/vcgencmd measure_temp
 +
temp=49.8'C
  
The downloaded image file is approximately 2 gigabytes of which is / boot and 94 megabytes / 1.8 gigabytes If you used a larger card to 2GB, so I recommend the rest of the card to connect as / home (or / usr ...). Clearance must be formatted using the example [[Gparted]]. At the first possible opportunity (after booting RPI or after mounting the card in the computer) need to be adjusted {{ic | / etc / fstab}}
+
Alternatively, simply read from the filesystem:
 +
% cat /sys/class/thermal/thermal_zone0/temp               
 +
49768
  
# Sudo vim / etc / fstab
+
=== Voltage ===
 +
Four different voltages can be monitored via {{ic|/opt/vc/bin/vcgencmd}} as well:
  
For example, add
+
% /opt/vc/bin/vcgencmd measure_volts <id>
  
/ Dev/mmcblk0p3 / home ext4 defaults 0 0
+
*core for core voltage
 +
*sdram_c for sdram Core voltage
 +
*sdram_i for sdram I/O voltage
 +
*sdram_p for sdram PHY voltage
  
The first operation == ==
+
== Overclocking/Underclocking ==
 
+
The Raspberry Pi can be overclocked by editing {{ic|/boot/config.txt}}, for example:
The official procedure here: http://archlinuxarm.org/support/guides/system/first-steps
+
Summary:
+
 
+
==Remote SSH access==
+
 
+
If you do not use the HDMI output RPI and you will access the device using SSH, the following applies.
+
Root pasword is: {{ic | root}}. Dopročuji perform key exchange [[SSH_Keys]].
+
 
+
~ Ssh root@192.168.1.123 (Use your Ip RPI)
+
 
+
==Localization==
+
 
+
# Vim / etc / locale.gen
+
 
+
uncomment {{ic | en_US.UTF-8 UTF-8}} and {{ic | en_US ISO-8859-2}}
+
 
+
generate localization files
+
 
+
# Locale-gen
+
 
+
==Setting the time and date using OpenNTP==
+
 
+
dopnit
+
 
+
==Setting the time and date manually==
+
 
+
complete
+
 
+
==Changing the root password==
+
After the first start RPI is nastaveho root password to root. It is therefore necessary to change it. Executed after power command {{ic | passwd}}
+
 
+
# Passwd root
+
 
+
==Adding another user==
+
Ic using {{|}} adduser to add the user.
+
 
+
# Adduser
+
 
+
==Sudo==
+
Start ic {{|}} visudo
+
 
+
# Sudo visudo
+
 
+
add the line "USER ALL = (ALL) ALL" below the line root ALL = (ALL) ALL
+
 
+
==Installing programs and environment==
+
 
+
Below is a brief overview of the basic packages and procedures that are initially desolation RPI could come in handy.
+
 
+
==Search==
+
 
+
To search for files and folders on the disc serves [[mlocate]].
+
 
+
# Pacman-S mlocate
+
 
+
after installation, you must restore the database
+
 
+
# Updatedb
+
 
+
==Shell==
+
For work I recommend [[zsh]].
+
 
+
# Pacman-S zsh
+
 
+
run
+
 
+
$ Chsh
+
 
+
and set
+
 
   
 
   
  / Bin / zsh
+
  arm_freq=800
 
+
arm_freq_min=100
==Graphical environment==
+
core_freq=300
 
+
core_freq_min=75
You need to install X server [[xorg]]:
+
sdram_freq=400
 +
over_voltage=0
  
  # Pacman-S xorg-server xorg-xinit xorg-server-utils xinit xterm xorg-
+
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 [http://elinux.org/RPiconfig#Overclocking Overclocking] article on elinux for additional options and examples.
  
[[Mesa]]
+
A reboot is needed for new settings to take effect.
  
# Pacman-S mesa
+
{{Note|The overclocked setting for CPU clock applies only when the governor throttles up the CPU, i.e. under load.}}
  
Video card drivers [[xf-video]]
+
Users may query the current frequency of the CPU via this command:
 +
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
  
# Pacman-SYF xf86-video-fbdev
+
== Serial Console ==
 +
Edit the default /boot/cmdline.txt
  
 +
Change loglevel to 5 to see boot messages
 +
loglevel=5
  
Which is connected with [[gamin]] and [[dbus]]
+
Change speed from 115200 to 38400
 +
console=ttyAMA0,38400 kgdboc=ttyAMA0,38400
  
  # Pacman-S dbus gamin
+
Start getty service
 +
  systemctl start getty@ttyAMA0
  
Graphical environment [[LXDE]]:
+
Enable on boot
 +
systemctl enable getty@ttyAMA0.service
  
  # Pacman lxde
+
Creating the proper service link:
 +
  ln -s /usr/lib/systemd/system/getty@.service /etc/systemd/system/getty.target.wants/getty@ttyAMA0.service
  
further into the set {{ic | ~ /. xinitrc}} add the following line:
+
Then connect :)
 +
screen /dev/ttyUSB0 38400
  
  $ Vim ~ /. Xinitrc (if they do not root)
+
== Video ==
 +
  pacman -S xf86-video-fbdev
  
insert
+
Adjustments are likely required to correct proper overscan/underscan and are easily achieved in {{ic|boot/config.txt}} in which many tweaks are set.  To fix, simply uncomment the corresponding lines and setup per the commented instructions:
  
  exec ck-launch-session dbus-launch startlxde
+
  # uncomment the following to adjust overscan. Use positive numbers if console
 +
# goes off screen, and negative if there is too much border
 +
#overscan_left=16
 +
overscan_right=8
 +
overscan_top=-16
 +
overscan_bottom=-16
  
==Running LXDE environment:==
+
Users wishing to use the analog video out should consult [https://raw.github.com/Evilpaul/RPi-config/master/config.txt this] config file which contains options for non-NTSC outputs.
  
startx
+
A reboot is needed for new settings to take effect.

Revision as of 12:53, 27 April 2013

Summary help replacing me
Raspberry Pi is a minimalist computer built for the ARMv6 architecture. More information about this project and technical specification.
Related
Beginners'_Guide

RPi Config - Excellent source of info relating to under-the-hood tweaks.

RPi vcgencmd usage - Overview of firmware command vcgencmd.

Article Preface

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.

Note: Support for the ARM architecture is provided on http://archlinuxarm.org not through posts to the official Arch Linux Forum. Any posts related to ARM specific issues will be promptly closed per the Arch_Linux_Distrubution_Support_ONLY policy.

Installing Arch Linux ARM

See the archlinuxarm documentation.

Audio

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 Analog out
  • 3 for HDMI

Caveats for HDMI Audio

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

hdmi_drive=2

Onboard Hardware Sensors

Temperature

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

/opt/vc/bin/vcgencmd measure_temp
temp=49.8'C

Alternatively, simply read from the filesystem:

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

Voltage

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

Overclocking/Underclocking

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

arm_freq=800
arm_freq_min=100
core_freq=300
core_freq_min=75
sdram_freq=400
over_voltage=0

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

loglevel=5

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

Video

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
#overscan_left=16
overscan_right=8
overscan_top=-16
overscan_bottom=-16

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.