HCL:Raspberry Pi

Jump to: navigation, search
Raspberry Pi

The Raspberry Pi is a credit-card sized computer that plugs into your TV and a keyboard. It’s a capable little PC which can be used for many of the things that your desktop PC does, like spreadsheets, word-processing and games. It also plays high-definition video.

Technical Data

  • Broadcom BCM2835 SoC
    • ARM1176JZ-F CPU (ARMv6)
    • Dual Core VideoCore IV® Multimedia Co-Processor
    • 1080p30 Full HD HP H.264 Video Encode/Decode
    • Advanced Image Sensor Pipeline (ISP) for up to 20-megapixel cameras operating at up to 220 megapixels per second
    • Low power, high performance OpenGL-ES® 1.1/2.0 VideoCore GPU. 1 Gigapixel per second fill rate.
    • High performance display outputs. Simultaneous high resolution LCD and HDMI with HDCP at 1080p60
  • 26-pin connector (model A/B) or 40-pin connector (A+/B+) also see Using The Header

More technical data (tests and configurations) on openSUSE:Raspberry_Pi.

Also the E-Linux Org PI HUB at http://elinux.org/RPi_Hub give you a lot of help in case of setup, hardware compatibility, use cases and more.

openSUSE in Raspberry Pi

Writing a disk image to the SD card

  1. Download the image you want from here:

    JeOS image

    If the direct links above do not work for you, please check the general download directory for the images.

  2. As root extract the image onto your SD card (replace sdX with the device name of your SD card).
    WARNING: all previous data on the SD card will be lost. Check first if the device you have selected is really your SD card!
     xzcat [image].raw.xz | dd bs=4M of=/dev/sdX iflag=fullblock oflag=direct status=progress; sync
  3. Insert the SD card with the openSUSE image into your board.
  4. Connect the board to your PC via serial port (optional, but helpful for debugging; USB-TTL serial cable needed).
  5. Connect the board to your monitor (via DVI/HDMI, optional).
  6. Power on the board.
  7. Walk through the first boot steps.
  8. Ethernet is configured to request an IP via DHCP, check your DHCP server for the board IP if used.
  9. Have a lot of fun...
Default login is root:linux, works on serial console, via ssh, GUI.

Known Issues

If you do not see any kernel output on serial or HDMI, you can add earlycon=pl011,0x20201000,115200n8 to the kernel command line for troubleshooting (e.g., by editing the GRUB menu item).

Multimedia software

In multimedia software, you may want to install, from Packman:

  • omxplayer: a command line media player making use of Raspberry Pi video hardware acceleration


Configuring the openSUSE system on the Raspberry Pi

Using the system headless

A headless system does not have a display and a keyboard connected. It is only connected to the network.

  1. Connect to the system using ssh and the login information, user: root password: linux and the IP address the system received from your DHCP server in your network.
  2. Use zypper to install the necessary services and applications (the system already contains a link to the repository containing this software).
  3. If you are not familiar using config files for services and application, but you are using YaST, you can install a number of YaST modules and use the ncurses interface to YaST to configure your system.

Manual Yast2 Install

# Note: this requires around 150MB free disk space on a freshly new SD.

# Yast2 Base:
 zypper install yast2

# Yast2 YOU base:
 zypper install yast2-online-update yast2-online-update-configuration yast2-online-update-frontend ncurses libyui-ncurses libyui-ncurses-pkg4

# Yast2 base sysconfig:
 zypper install  yast2-basis patterns-openSUSE-yast2-basis yast2-inetd yast2-network yast2-storage yast2-sysconfig yast2-trans yast2-sudo yast2-sshd yast2-runlevel yast2-pam

Yast2 .. some modules.
 zypper install yast2-instserver yast2-installation yast2-ldap-client yast2-mail yast2-samba-server yast2-samba-client 

# If you think you miss a Yast2 module, install it ...
zypper search yast2 | egrep -v '(debuginfo|debugsource|devel|Quellpaket)'
zypper install <module>

In case you want the more familiar YaST2 windows, you have to install an x11 package and a number of yast qt packages

zypper in yast2-x11 yast2-control-center-qt libui-qt-pkg4

(a number of needed packages are also pulled in) and start YaST using


In this case you have to make the ssh connection using

ssh -X root@<IP address RPi>

Warning: It may take up to 60 seconds before you get the YaST window on your screen.

  1. Have a lot of fun installing and configuring...

Configure Boot & System startup parameters /boot/config.txt

Warning: You may need to adjust some parameters in the file config.txt (see openSUSE:Raspberry_Pi#Custom_configuration:_config.txt) in the DOS partition to have a proper display on your screen.

Using a keyboard

Warning: As default you will get an American keyboard layout. Keep this in mind, when entering the password ...
  1. Manual way of updating keyboard:
 zypper install vim
 vi /etc/sysconfig/keyboard
  1. Change to e.g. (sample for standard german 105 keytype´s):

reboot your Pi after changes.

Configure default system runlevel for headless

with Opensuse after 12.3 for RPi systemd are the default, no sys5 init system anymore :-)

How do I change the runlevel? systemd has the concept of targets which is a more flexible replacement for runlevels in sysvinit.

Run level 3 is emulated by multi-user.target. Run level 5 is emulated by graphical.target. runlevel3.target is a symbolic link to multi-user.target and runlevel5.target is a symbolic link to graphical.target.

You can switch to ‘runlevel 3′ by running

  1. systemctl isolate multi-user.target (or) systemctl isolate runlevel3.target

You can switch to ‘runlevel 5′ by running

  1. systemctl isolate graphical.target (or) systemctl isolate runlevel5.target

To set runlevel 5 and 3 we should modify a symbolic link to point a specific Target symbolic link metric:
(runlevel 5) :

 rm /etc/systemd/system/default.target
 ln -sf /usr/lib/systemd/system/graphical.target /etc/systemd/system/default.target 
 (runlevel 3) :

 rm /etc/systemd/system/default.target
 ln -sf /usr/lib/systemd/system/multi-user.target /etc/systemd/system/default.target 

Manual Network Setup for Static IP

Steps to Setup Static Network on Factory OpenSuSE Image below
Assume your network is an Class C 192.168.1.x with Router/gateway/dns a at .1 and your local domain called "local"

echo "default - -" >/etc/sysconfig/network/routes

cp -p /etc/sysconfig/network/ifcfg-eth0_orig
cat << EOF >/etc/sysconfig/network/ifcfg-eth0
cp -p /etc/resolv.conf /etc/resolv.conf.orig
cat << EOF >/etc/resolv.conf
domain local
search local

For permanent DNS / NTP settings edit the /etc/sysconfig/network/config settings instead of /etc/resolv.conf & /etc/ntp.conf upon your own needs.

echo " MyPIHostname.local  MyPIHostname >>/etc/hosts

echo MyPIHostname >/etc/HOSTNAME

and do:

rcnetwork reload 
rcntp reload "

Disable IPV6

Steps for disabling ipv6:

echo "net.ipv6.conf.all.disable_ipv6=1" >/etc/sysctl.d/disableipv6.conf

The non-systemd way (typically for 12.2 and earlier)
Code:     sysctl -p

The systemd way (12.3 and later although the above should still work indefinitely)
Code:    systemctl restart systemd-sysctl.service

Disable LINKLOCAL / Zeroconf / on headless

The link-local ( zero conf network may not always required - i.e., at headless to disable it do the following steps:

Change "NOZEROCONF" to yes.

vi /etc/sysconfig/network/config 

save it exec : rcnetwork restart

HP hplip Cups drivers for RPi

as not yet build by oss service for RPi,
see 3rd party  Build Project on GITHUB https://github.com/remsnet/OpenSuSE-hplip
The created build for Raspberry Pi 
RPM & SRPM created for openSUSE 13.1 RPi arm
are stored at our Drop Box URL for openSUSE RPi

Troubleshooting RPi

Moved to openSUSE:Raspberry_Pi#Troubleshooting_RPi

See also