Utility tools to setup a Raspberry Pi board for a Poppy Creature
Clone or download

README.md

Raspoppy: Utility tools to setup a Raspberry Pi for Poppy robots

This repository regroups the set of tools we use to setup a Raspberry Pi board for a Poppy robot.

While we try to keep this procedure as simple as possible, it still requires a good knowledge of Linux OS and of Python. For those who are not interested in digging into those details, we provide ready-to-use SD-card images which can be directly downloaded and copy into your Raspberry.

This procedure is mainly designed for the Raspberry Pi 2 and 3. However, some parts (especially all conda recipes) should also work for the odroid XU4 as both boards used an armv7 CPU. It is also important to note that this procedure is only given as an example: i.e. this is how we build the SD-card images we provide. Yet, you can freely adapt to better match your needs.

Current SD card ISO version: 2.0.0

  • Default user: poppy password: poppy
  • Default hostname: poppy
  • Python 2.7.10 miniconda latest - 3.18.3 distribution for linux-armv7
  • Conda recipes for linux-armv7 (on the poppy-project channel):
    • explauto 1.2.0
    • Flask 0.10.1
    • hampy 1.4.1
    • ikpy 2.2.1
    • jupyter 4.0.6
    • matplotlib 1.5.0
    • nbextensions alpha
    • numpy 1.9.2
    • opencv 3.1.0
    • poppy-creatures 2.0.0
    • poppy-ergo-jr 2.0.0
    • pypot 3.0.1
    • scipy 0.16.0 (need libgfortran3)
  • auto start jupyter at boot
  • auto start web interface at boot
  • Snap!
  • enable RPI-camera (v4l2 driver)
  • setup serial communication

Update

Manual install

Install Raspbian

Just follow standard instructions from raspberry.org. We use Raspbian Stretch Lite 2017-09-07 image.

You will need to make sure that you have enough free space in your raspberry. The easiest way is to use the raspi-config script to expand your partition to the full SD-card. Just log into your Raspberry Pi and run:

sudo raspi-config --expand-rootfs

You will then need to reboot.
Note: If you have installed your SD-card using NOOBS the partition should already be extended.

Setup the OS for our needs

Log again in your Raspberry Pi. You can connect via ssh or directly plug a screen and a keyboard.

The following requires the Raspberry Pi to have an internet access.

curl -L https://raw.githubusercontent.com/poppy-project/raspoppy/master/raspoppyfication.sh -o /tmp/raspoppyfication.sh
chmod +x /tmp/raspoppyfication.sh
sudo /tmp/raspoppyfication.sh

These commands will install all the software detailed above, and set up the control interface. When it's done, reboot the Raspberry Pi and connect to http://poppy.local.

The installation script defaults will set the board for a Poppy Ergo Jr, but it can be slightly tailored to suit your needs. ./raspoppyfication.sh --help displays available options.

Options are:

  • --creature: Set the robot type (default: poppy-ergo-jr)
  • --username: Set the Poppy user name (default: poppy)
  • --password: Set password for the Poppy user (default: poppy)
  • --hostname: Set the robot hostname (default: poppy)
  • --branch: Install from a given git branch (default: master)
  • --shutdown: Shutdowns the system after installation
  • -?|--help: Shows help

Shrink the ISO

Follow these instructions to reduce the size of the image. Be careful though, a bad manipulation could mess up your partitions!