Public Lab Research note


Introducing Pi Builder

by icarito with warren | | 508 views | 3 comments |

Read more: publiclab.org/n/17262


The Public Lab Kits Initiative uses Raspberry Pi cameras more and more, and was in need of a workflow to generate customized operating system images for specific needs such as the Microscope and Lego Spectrometer Kits.

In general, while Raspberry Pi mini-computer boards are amazing, there's a significant barrier for many people to use them, which is the installation and configuration of the memory card with useful software -- like camera software, for example!

Plug and play

We wanted to have a way to generate different pre-loaded SD cards, repeatably and reliably, for different uses. And we wanted people to be able to simply insert an SD card, plug in the camera and power, and start using the Raspberry Pi as a camera as quickly as possible.

We also had a desire to build a process whereby the community could participate in the construction of the operating system that we distribute with our kits and also to share recipes and ready-made images for usage in specific scenarios.

The default operating system image is meant to simplify the workflow for kit users, so these well-defined features needed to be set up:

  • A WiFi hotspot with a _captive portal _(like airport WiFi) so you are prompted as soon as you connect
  • A streaming web camera application
  • Ability to run scripts (e.g. Timelapse)
  • A friendly landing page with links to the above

I was contracted for this and so I had to come up with great shoulders to stand on in order to deliver all features! Disclosure: I am also Public Lab's part time Systems Administrator.

Fortunately thanks to the great work of the Hypriot Project, and the Gitlab CI service, we are able to iterate quickly and collaboratively, from an orderly and flexible base.

Please consider this release a Beta to try out

Download

☁️ Download latest combined image

Documentation

The documentation is included with the combined image. You may also read it online.

We also have a page for Q&A, troubleshooting, and activity guides here.

Contributing

Adding a new "recipe" is quite easy -- it is possible to fork our repository, make your modifications and open a pull request, which our system will use to generate a new custom image. You can then download a fully built customized image ready to be burnt into your Pi¹.

¹: Tested on Pi Zero W only.

We'll be thrilled to see this repository evolve in alignment with the communities's needs.


I did this Help out by offering feedback!


People who did this (0)

None yet. Be the first to post one!


3 Comments

Amazing!

At IMVEC we're working in a couple of cameras using RPi zero and one of them involves internet connection to display obtained images online.

Both involve the use of the Witty pi mini board to manage energy of the pi.

Using the combined image everything goes like a charm. The camera is accesible and the command line works perfectly.

Trying to connect to internet using wifi I'm unable to turn off the acces point and turn on the wifi.

I've set up wifi credentials using wpa_supplicat (wpa_phrase and so on..) and turn ap0 down using "ifconfig ap0 down". After this "ifconfig wlan0 up" but nothing happens... How can I do this?

Woul be great to have a little interface in the captive portal page to turn of acces point and connect to a wifi signal and download packages needed for the different recipes ;D.

I understand further connection should be done using terminal + keyboard + monitor...

Is this a question? Click here to post it to the Questions page.


This is great to hear, @xose - I've actually found that it should be possible to get a Pi Zero W running BOTH as an access point and connecting to another WiFi network. 

I've started an issue here to work towards a recipe for that: https://github.com/publiclab/pi-builder/issues/34

We do have a web terminal connected too, which can help sometimes, in one of the recipes at https://github.com/publiclab/pi-builder/pulls

Would you be interested in posting some of your configuration steps to the above issue (or another that interests you) and we can work towards getting a reproducible build of that setup for anyone to download? The hope is that small incremental improvements to the image can be retained and versioned, making them more reproducible each time a change is made. This can be hard with Pi development -- so much can be lost since it's all "trapped" on that SD card :-)

Have you had much luck with the timelapse feature of RPi Cam web interface? I had some trouble downloading it in bulk since it tries to generate a .zip file, which then fails in the web interface. 

On Wed, Oct 31, 2018 at 1:44 PM \<notifications@publiclab.org> wrote:

Hi! There's been a response to a discussion you're involved in. You can reply to this email or visit this link:

https://publiclab.org/notes/icarito/10-21-2018/introducing-pi-builder#c21068

xose wrote:


Amazing! At IMVEC we're working in a couple of cameras using RPi zero and one of them involves internet connection to display obtained images online. Both involve the use of the Witty pi nimi board to manage energy of the pi. Using the combined image everything goes like a charm. The camera is accesible and the command line works perfectly. Trying to connect to internet using wifi I'm unable to turn off the acces point and turn on the wifi. I've set up wifi credentials using wpa_supplicat (wpa_phrase and so on..) and turn ap0 down using "ifconfig ap0 down". After this "ifconfig wlan0 up" but nothing happens... Woul be great to have a little interface in the captive portal page to turn of acces point and connect to a wifi signal and download packages needed for the different recipes ;D. I understand further connection should be done using terminal + keyboard + monitor...


Look like spam? Mark this as Spam

Reply at: https://publiclab.org/notes/icarito/10-21-2018/introducing-pi-builder#comments

Report abuse to: moderators@publiclab.org

Check out the blog at https://publiclab.org/blog | Love our work? Become a Public Lab Sustaining Member today at https://publiclab.org/donate

Is this a question? Click here to post it to the Questions page.


Also, interestingly, we have Infragram running in live-streaming mode pulling from the Pi camera on a web interface hosted from the Pi!

https://github.com/publiclab/pi-builder/pull/40

infragram-pi_copy.png


You must be logged in to comment.

Public Lab is open for anyone and will always be free. By signing up you'll joined a diverse group of community researchers and tapped into a lot of grassroots expertise.

Sign up