Bake a Gecko Pi -Run Geckoboard at boot on a Raspberry Pi

Posted by Gareth Wilson

Jul 20, 2012 7:07:00 PM

We recently got our Raspberry Pi through at Geckoboard:

Of course we quickly set about getting Geckoboard running on it. In this article we'll walk you through the steps required to get your Raspberry Pi to load in to Geckoboard from boot. This makes for a great little machine to power your dashboard on a large screen TV. Since the Raspberry Pi is small it can be hidden behind the TV and its low cost and power consumption means it's an efficient choice. It's lack of RAM means it can be a touch slow to render and this may mean that it isn't quite ready for prime time, but improvements like Raspbian may yet change that. It's certainly a fun project to try out.

What you'll need:

    • Raspberry Pi
    • SD Card
    • Power Cable
    • HDMI Cable
    • Ethernet/USB Wifi connection
    • USB Mouse
    • USB Keyboard
    • Display device with HDMI input

Get your Raspberry Pi Setup

    • With the SD Card in, then connect your Raspberry Pi to your display using the HDMI cable. Plug-in the keyboard, mouse and ethernet cable (or USB WiFi connection) and you're ready to go.
    • You should now be able to boot in to the command line of Debian.

Install Chromium

    • We'll then install the Chromium browser. Debian Squeeze comes with Midori, but we prefer Chromium for this use. You can install it by typing:

aptitude update
aptitude install chromium-browser chromium-browser-l10n

Remove the login prompt and start the GUI at boot

    • You can then optionally remove the login prompt (assuming your Raspberry Pi is setup in a secure location) and get it to load the GUI (startx) when it boots. There's full details here, but to do this, type:
sudo nano /etc/inittab

    • Scroll down to: '1:2345:respawn:/sbin/getty 115200 tty1' and comment it out by changing the line to:
#1:2345:respawn:/sbin/getty 115200 tty1

    • After that line add:
1:2345:respawn:/bin/login -f pi tty1 /dev/tty1 2>;&1

    • To save your changes, press Ctrl+X to exit, Y to save followed by enter twice. Then type:
sudo nano /etc/profile

    • At the scroll to the bottom and add:

    • And save your changes by typing Ctrl+X to exit, Y to save followed by enter twice
    • We'll need to get access to the root user account shortly, so we'll now set the root password. To do this type:
sudo passwd root

    • You'll then be prompted to enter a new password. With that set type 'startx' and press enter to start the GUI.

Make Geckoboard the homepage and load Chromium full-screen at startup

    • From the Program Menu go to Internet > Chromium and open Chromium. We'll then set the homepage to be the Geckoboard dashboard you want to display. You can do this by setting the default homepage in Options, setting the read-only dashboard url in the field 'Open this page'.
    • Now we want to make Chromium start when the GUI does. We need to use our 'root' user account to do this go to the Program Menu and load Accessories > Root Terminal. You'll be prompted to enter your root password, please do so in the dialog box. Then change directory, by typing:
cd ../
cd ../
cd /etc/xdg/lxsession/LXDE

    • Then type:
sudo nano autostart

    • At the end, add:
@usr/bin/chromium-browser - -kiosk

    • We're running it in Kiosk mode, which is the full-screen option.
    • Lastly you'll want to remove the screensaver so that your board doesn't get interrupted. You can select Screensaver from Preferences in the Program Menu and in the Mode drop-down, select 'Disable Screen Saver'.


The Result

    • There's a few visual quirks due to missing fonts, but you should end up being able to boot your Raspberry Pi right in to Geckoboard, like in the following video:



Jim kindly added some notes to make it work better:

Fix for fonts quirks
apt-get install ttf-mscorefonts-installer

Turn off screensaver
comment out screensaver from /etc/xdg/lxsession/LXDE/autostart

Prevent screen blanking
edit /etc/lightdm/lightdm.conf
add a line "xserver-command=X -s 0 dpms" under [SeatDefaults] section

Hide mouse pointer
apt-get install unclutter
edit ~/.config/lxsession/LXDE/autostart
add a line "@unclutter"

Prevent chromium from displaying "Do you want to restore last Session" after unclean reboot
add --incognito to chromium command-line option

Topics: pi, dashboard, raspi, gecko, product, geckoboard, raspberry

Subscribe to Email Updates

Posts by Topic

see all