I reccently bought a Raspberry PI. I am new to ArchLinux so I thought I'd make some notes of the initial setup. This is the hardware used to build the camera:
- Raspberry Pi Model B 512MB RAM
- Camera Module for Raspberry Pi
- WiFi USB Nano
- OpenBox Sky Case
- 16GB SD
Partitioning SD card
I added the ArchLinux image to a 16GB card. The images creates a 2GB parition so you need to either extend it before booting or create a new partition after boot. I choose to create a new partition after boot, and use it for
fdisk /dev/disk/by-id/mmc-* n add partition w save and exit
Create file system.
Remove everything in
/home. I am assuming you have nothing important here yet.
rm -rf /home/*
Mount the device at boot.
/dev/mmcblk0p3 /home ext4 defaults 0 2
I had never heard of Pacman package manager before. But its just as easy. To search for packages do this.
pacman -Ss partOfPackageName
To install a package do this.
pacman -S packageName
Upgrade all packages.
Initiallly I had some problems when installing packages. I got this.
"from mirror.archlinuxarm.org : The requested URL returned error: 404 Not Found"
Just perform a full uppgrade and it should be resolved.
To list available devices do.
To get the wireless network running I installed these.
pacman -S wpa_supplicant pacman -S wpa_actiond pacman -S ifplugd pacman -S dhclient pacman -S openntpd
There is a very nice setup wizard, just do this.
Network configuration exists in profile files. I had some problems with the DHCP client not setting IP:s after network loss. I added
DHPClient to the profiles to make it reconnect.
#/etc/netctl/ethernet-dhcp Description='A basic dhcp ethernet connection' Interface=eth0 Connection=ethernet IP=dhcp DHCPClient='dhclient' TimeoutDHCP=30 ExecUpPost="ntpd -s &"
#/etc/netctl/wlan0-tallefjantlinksys Description='Automatically generated profile by wifi-menu' Interface=wlan0 Connection=wireless Security=wpa ESSID=MYNETWORKNAME IP=dhcp Key=12312312312313123132 DHCPClient='dhclient' TimeoutDHCP=30 ExecUpPost="ntpd -s &"
To make WLAN connect when available, and Ethernet connect when plugged, do this.
systemctl enable email@example.com systemctl enable firstname.lastname@example.org
To make WLAN and Ethernet use DHCP at boot, do this.
systemctl enable dhcpcd@eth0 systemctl enable dhcpcd@wlan0
I noted that the network setup was not working after the first initual upgrade with Pacman. To solve it I just disabled the enabled services and enabled them again.
systemctl status --failed systemctl disable FAILEDSERVICE
I had problems with DHCP timeouts so I added the
TimeoutDHCP parameter and set it to 30. Default is 10 seconds. Also the
ExecUpPost will set time from NTP when connected.
Time and date
In my case, Sweden.
rm /etc/timezone ln -s /usr/share/zoneinfo/Europe/Stockholm /etc/timezone
Also, the Raspberry Pi has no battery. The time will be 1970 on every reboot. You can use NTP to set the date from a time server on startup.
pacman -S openntpd
To start ntpd when a network interface is connected, add
ExecUpPost to your interface profile. Here is an example of my eth0.
Description='A basic dhcp ethernet connection' Interface=eth0 Connection=ethernet IP=dhcp ExecUpPost="ntpd -s &" Raspberry Camera
Camera module software in PATH
~/.bashrc I added.
Tweak camera memory usage
/boot/config.txt I added.
gpu_mem=128 start_file=start_x.elf fixup_file=fixup_x.dat
Speed up camera
The camera may seem slow. There is a default delay of 5 seconds before it takes the picture. You can change this with
I've noticed the device hangs when storing larger videos. It's a good idea to record video directly to RAM, that works much better for me. By default
/tmp is mounted as
/opt/vc/bin/raspistill -t 0 -o /tmp/test.png /opt/vc/bin/raspivid -o /tmp/out.h264 -t 5000 /opt/vc/bin/raspivid -o /tmp/out.h264 -t 20000 /opt/vc/bin/raspivid -o /tmp/out.h264 -t 60000