Raspberry PI Configuration#

Basic installation#

The SD card that comes with the raspberry PI has raspbian pre-installed. You can figure out the particular raspbian version by doing

> less /etc/os-release

PRETTY_NAME="Raspbian GNU/Linux 9 (stretch)"
NAME="Raspbian GNU/Linux"
VERSION_ID="9"
VERSION="9 (stretch)"
ID=raspbian
ID_LIKE=debian
HOME_URL="http://www.raspbian.org/"
SUPPORT_URL="http://www.raspbian.org/RaspbianForums"
BUG_REPORT_URL="http://www.raspbian.org/RaspbianBugs"

In order to update to the latest version, go ahead and download the OS image from the raspberry page and unzip it.

The community recommends Etcher to flash the image onto the SD card, and this is actually quite easy—you download the binary from the website, change the permissions to make it executable and run it. (You will need a card reader for the thing to happen.)

Note

Version 11 of raspbian comes with Python 3.9.2 installed, and it seems like a good starting point for our purposes.

After the OS installation you might want to do an update:

> sudo apt dist-upgrade

Dependencies#

The only additional packages that you need, on top of the standard raspbian Desktop installation, are:

  • the Python wrappers to the Qt library for the GUI;

  • the pandas framework for parsing the excel configuration file.

> sudo apt-get install python3-pyqt5 python3-pandas

Setting up the screen#

You get control of the screen orientation (e.g., vertical vs. horizontal) through the Preferences -> Screen Configuration dialog. This will open the screen editor that allows to change the orientation.

Alternatively, you can hack the /boot/config.txt, e.g.

display_hdmi_rotate=1

to rotate the screen by 90 degrees (i.e., to the right).

Presentation software#

In order to clone the repository just do

> git clone https://github.com/lucabaldini/pisameet.git

This should come up with a small fictional session from the last edition of the Pisa Meeting (i.e., the one in 2018). You should be able to run the slideshow by doing

> ./pisameet/slideshow.py pm2018/pm2018.xlsx

Unique Screen Identifier#

Each Raspberry PI should be assigned a unique screen identifier, in order for the slideshow code to be able to determine with posters should be added to the roster on any given machine. This is a achieved through a text configuration file living in the pisameet subfolder called screen.cfg.

Note

If the pisameet/screen.cfg files does not exist, a default one will be created, using a copy of the pisameet/screen.cfg.sample included in the distribution. (Note the actual configuration file is included in the .gitignore file). In any event, the file should be edited by hand.

(And it would be a good thing to have a physical label on the board matching the screen identifier of each device.)

See also

program

Automatic slideshow start#

The raspberry PIs should be configured in such a way that they will automatically start the slideshow at login, and the quickest way to achieve that is through a .Desktop file to along the lines of

[Desktop Entry]
Type=Application
Name=Pisa Meeting Slideshow
Exec=/usr/bin/python3 /home/pi/pisameet/pisameet/slideshow.py /home/pi/pisameet/pm2018/pm2018.xlsx

The pisameet distribution comes with a pisameet.desktop sample file that you can adapt and copy into the /home/pi/.config/autostart folder (which, most likely, you will have to create first):

> mkdir /home/pi/.config/autostart
> cp pisameet.desktop /home/pi/.config/autostart