The Raspberry Pi, short Raspi, is a small computer with the size of a cigarette box. It is operated with Linux and offers in the latest version actually everything, that one knows from the desktop pc.
So there are e.g. connectivity possibilities to USB, Network, HDMI, 3.5mm audio and RCA video cables. Instead of a hard disk, an SD card is used as a storage medium, which is not included in the delivery. Meanwhile there are also harddisks for the Raspi. Thanks to the GPU, videos (with supported codecs) can be played smoothly. The board uses an 64-bit ARMv8 quad-core CPU, which is not compatible with the x86 standard known on typical PCs with Intel or AMD CPUs. Therefore, you should first check whether the desired programs work on the Raspi. Just because there is a Linux version of a program, the program does not automatically run on an ARMv8 CPU.
BOINC can fortunately be installed on the Raspi, but there are currently not many supported projects, as hardly any project operator provides applications for ARM cpus. There is a simple reason for that, because the computing power and the RAM size are quite modest for the Raspi. The primary goal of the Raspi development was to develop the most affordable computer that could barely reproduce video and perform typical office tasks. Despite the low price of around 35€ is worthwhile. However, it is not worth building a cluster of several Raspis, as a large x86 computer offers more computing power for the same price.
The benefit of the Raspis for distributed computing is therefore not in compute-intensive applications, but in the so-called hardware projects, which evaluate sensors connected to the computer and send the results to the project operator. In turn, the Raspi is optimal, since the purchase price and power consumption (only 7 watts) are very small. So hardly costs arise, even if you can collect with the Raspi sensor data around the clock.
The Raspi is available in the following variants:
- Raspberry Pi 1, Model A, which does not have an RJ45 jack for network access and is therefore rather inappropriate for BOINC, if you do not want to connect external network interfaces via USB
- Raspberry Pi 1, Modell A+, ARM1176JZF-S
- Raspberry Pi 1, Model B, ARM1176JZF-S,with RJ45-jack and 256 MB RAM
- Raspberry Pi 1, Model B+, ARM1176JZF-S, with RJ45-jack and 512 MB RAM
- Raspberry Pi 2 Model B, ARM Cortex A-7, with RJ45-jack and 1024 MB RAM
- Raspberry Pi 2, Modell B v1.2, ARM Cortex A-53
- Raspberry Pi 3 Model B, ARM Cortex A-53, with RJ45-jack + WiFi and 1024 MB RAM
- Raspberry Pi 3 Model B+, ARM Cortex A-53, with 1,4 Ghz (4 cores), 2,4 GHz+5GHz WiFi (802.11bgn, 802.11.ac), Bluetooth Standard 4.2/BLE, PoE ready, 1 GB DDR2 SDRAM, ATA hard disk interface, 10/100/1000 Mbit Ethernet (LAN)
The variants Raspberry Pi Zero, Zero W / WH (ARM1176JZF-S) and the Computing Modules 1 (ARM11), 3 and 3 Lite (ARM Cortex A-53) are mentioned here for the sake of completeness.
The Raspi comes without any accessories, so you should think about whether you have everything you need at home or have to order something else.
You do need:
- SD-card (not all cards work. The best is an older SD card with 4-16GB memory or better order an official recorded Raspi SD card)
- Micro-USB-cable (dient der Stromversorgung des Raspis)
- RJ45-patch cable (to connect the Raspi to the router. For the Raspberry Pi 3 it is no longer necessary, because of WiFi.)
- Power adapter with USB output and 700mA output power (if you want to power the Raspi independently)
- SD card reader (for transferring the latest Linux distribution to the SD card from your PC)
- USB hub with external power supply (if you need more than 2 USB ports or connect devices which use a lot of power)
- USB keyboard and USB mouse (unless you want to operate the Raspi via SSH software access)
- HDMI or RCA cable to connect a monitor / TV (unless you want to operate the Raspi via SSH software access)
- Case for protection against short circuits / electrostatics (there are quite a few official and unofficial ones)
Overcklocking the Raspi
The Raspi is easy and rewarding to overclock, which can bring up to 50% more power. There are 2 options for this.
The Raspi can be easily overclocked using the configuration menu with predetermined values, which have turned out to be mostly stable. Since the Raspi clocks down automatically at these preset settings, when the temperature becomes critical, officially even the guarantee remains. The configuration menu can be opened via the command "sudo raspi-config". There you'll find the menu item "Overclock", which one chooses to overclock. If the item does not exist, then first select the item "Update" and then try again.
If you want to overclock the Raspi more variable, you can do so by changing the file "config.txt". You can either edit the file on any computer, if you put the SD card there in the card reader, or you do this directly from the Raspi with the command "sudo nano -w /boot/config.txt". There you can then, for example enter the following:
- arm_freq_min=700 #ARM-CPU will be clocked down to 700MHZ, if the overheat protection intervenes
- arm_freq=1000 #ARM-CPU should run on 1000MHZ
- core_freq_min=250 #GPU will be clocked down to 250MHZ if the overheat protection intervenes
- core_freq=500 #GPU should run on 500MHZ, which also helps the CPU (faster L2 cache)
- sdram_freq_min=400 #RAM will be clocked down to 400MHZ if the overheat protection intervenes
- sdram_freq=600 #RAM should run on 600MHZ
- over_voltage_min=0 #Voltage should be 1.2V + 0 * 0.025V when the overheat protection intervenes
- over_voltage=6 #Voltage should be 1.2V + 6 * 0.025V, that is 1.35V
- temp_limit=85 #Temperature in degrees Celsius, from which the overheating protection should intervene
- force_turbo=0 #A "1" disables the overheat protection and does not cause the clocks to fluctuate dynamically
After a restart of the Raspis the clock rates should be adjusted then. There is also more information here in English.
You should carefully approach higher clock rates, as each Raspi can be overclocked to different extents. Too high overclocking will result in e.g. quickly errors on the SD card (because not all SD cards can handle such high clock rates), so before overclocking them, e.g. should secure with Win32DiskImager.
It is also helpful to use the Raspi not by SSH, but by keyboard, mouse and monitor. On the one hand you can see the errors while booting and on the other you can hold the Shift-key while booting, which will reset the overclocking settings.
- If you enter "
/opt/vc/bin/vcgencmd measure_temp" into the terminal, the temperature of the SoC will be displayed.
- If you enter "
/opt/vc/bin/vcgencmd measure_temp" into the terminal, then the temperature of the SoC will be displayed.
- By entering "
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq" you get the current clock of the ARM CPU in kHz. So "750,000" means 750MHZ.
Important factors in overclocking are also a stable power supply and heat dissipation. Because of the power supply you should not take the cheapest power supply and it should already supply 1A. It is best to hang all USB devices on a USB hub with its own power supply so that the peripherals do not steal power from the Raspi.
The Raspi comes originally without active cooling and without a heat sink. In the process, the SoC and the LAN / USB chip become particularly hot, which you can see on the heatmap on the right. The SoC has a good 55 degrees temperature in idling at standard speed and heats up to 65 degrees at full load.
If you are gifted, you can convert your Raspi for good 10€ to active / passive cooling. All you need is a Raspi case (5 €), a few (self-adhesive) heatsinks (about 2 €), a 5V 40mm fan (2 €), a USB plug (1 €), 4 nuts and screws or glue (for the fan), as well as a drill and a soldering iron.
With the settings of the config.txt from above, the Raspi with 1000MHZ under full load passively cooled (picture right) with 54 degrees. Turning on the fan causes the temperature to drop to 31 degrees.
- English Raspi-Wiki
- Asteroids@Home project website
- Explanation of the use of SSH (German)
- Wikipedia entry about the Raspberry Pi
- Raspberry Pi for science with BOINC (German)