Venezia Camp 2013 Raspberry Pi Lab

35
Raspberry Pi Lab VeneziaCamp 12 Aprile 2013 Stefano Paganini www.stefanopaganini.com

description

 

Transcript of Venezia Camp 2013 Raspberry Pi Lab

Page 1: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi Lab

VeneziaCamp12 Aprile 2013

Stefano Paganiniwww.stefanopaganini.com

Page 2: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi Lab: programma

• Genesi del progetto• Minimalia technica• Quali utilizzi pratici– Client– Server– Real world applications

• Primi passi, istruzioni & trucchi

2Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 3: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Un passo indietro nel tempo…Anno 1998:• un PC basato su Pentium III 700 Mhz,• 512 mb di RAM, • alimentatore da 400W, • circa 15 Kg

3Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 4: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Anno 2013: Raspberry Pi, • CPU @ 700 MHz,• 512 MB di RAM, • Consumo: circa 1,5 W…• 45 grammi

4Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 5: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Il progetto nasce con l’obiettivo di promuovere lo studio dell’informatica tramite strumenti a basso costo.

La Raspberry Foundation, creata da Eben Upton nel 2009, ha raccolto docenti di vario livello, ingegneri, esperti ed appassionati e… investitori.

Partito nel 2006, il progetto Raspberry Pi, ha avuto diverse evoluzioni dovute a scelte progettuali.

5Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 6: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Presentato per la prima volta a Gennaio 2012, prezzo unitario 200 Sterline, in un lotto di 10 schede, ha subito preso in contropiede i fondatori.

Da Febbraio 2012 è partita la distribuzione su larga scala con un primo lotto di 10.000 schede.

A fine Dicembre 2012 è stato raggiunto il traguardo del primo milione di Rpi venduti.

6Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 7: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Quali le caratteristiche del RPi?

- Basso costo ($ 35 – circa 45 euro per il modello B)- Software open source- Compatibilità con periferiche USB- Accesso al livello hardware (GPIO)- Facile connessione a TV, monitor (HDMI, composito)

7Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 8: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progettoDue modelli A e B

- Processore SOC Broadcom a 700 Mhz- 512 MB di RAM- Due porte USB- GPIO + SPI (porte dedicate per

accesso hardware)- Output in Full-HD su HDMI

- Il modello B dispone di una porta Ethernet 100MBit

- $35 per il modello B, $25 per il modello A

8Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 9: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progettoChe cosa permette di fare?

Praticamente tutto, a basso costo:- Multimedia- Giochi- Didattica- Real world- Elettronica- Sistemistica- Altro (molto altro)

9Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 10: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progettoQuali i motivi del successo:- Basso costo (…)- Ampia disponibilità di materiale didattico- Comunità di sviluppatori/appassionati molto attiva- Endorsement da parte di società (Google UK) e autorità

accademiche e scuole, in particolare private- http://www.guardian.co.uk/education/2012/jan/09/raspberry-pi-computer-

revolutionise-computing-schools?newsfeed=true

- Architettura Linux e compatibilità progettuale con il mondo open source

- Orgoglio UK nella rinascita del settore e revival anni ‘80 del successo di BBC Model B

10Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 11: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progettoChe cosa NON fa:- Non sostituisce un vero computer

- Anche il client più completo risulta molto lento- In alcune applicazioni Server può risultare troppo limitato

- Non dispone di un orologio in tempo reale- Necessita di Internet o di una scheda dedicata per mantenere

un clock real-time- Non è prevista alcuna forma di espansione/upgrade

- La semplicità progettuale ha imposto tagli sul fronte upgrade

11Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 12: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Cosa è un computer su scheda singola

La caratteristica fondamentale del Rpi è il chip SOC – System on a Chip che integra un processore ARM1176JZF-S a 700 MHz, una GPU VideoCore IV, e 256 o 512 Megabyte di memoria.

12Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 13: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Genesi del progetto

Confronto con Arduino, progetto di single-board-computer tutto Made in Italy.

Arduino: orientato all’open source, alla community dei makers.

RPi: orientato alla didattica ma anche al multimedia.

Molte altre considerazioni…

13Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 14: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: dove si trova/come si compra

Attualmente, i distributori ufficiali sono due:RS e Farnell, entrambe UK-based.

In Italia, è frequentemente reperibile su ebay, presso negozi di elettronica online e, da poco, anche su Amazon.

Caveat: il modello B è disponibile nella Revision 2, più recente e con 512 Mb di RAM.

Evitare modelli più vecchi e/o venditori che non specificano correttamente la release.

14Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 15: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Cosa serve/ quali perifericheA parte il Raspberry Pi, sono necessarie alcune periferiche di base (quasi tutte

di facile reperibilità e basso costo):- Schede SD, raccomando >= 4GByte, possibilmente veloci,- Alimentatore 5V, circa 1A con attacco Micro-USB (reperibile come

alimentatore per cellulari/tablet)- Cavo Ethernet,- Cavo HDMI o VideoComposito- Tastiera + mouse USB

Inoltre:• Joystick,• Wi-Fi su USB• Bluetooth su USB...

15Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 16: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Client a basso costo

Anche se non può garantire un utilizzo di alto livello, paragonabile a quello di un PC/Mac, un RPi con tastiera/mouse USB, monitor (in Full HD) può costituire un discreto client per la navigazione web, per la visualizzazione di contenuti multimediali, per il lavoro con OpenOffice.

E’ inoltre ottimale come ‘kiosk-pc’ per l’inserimento in strutture pubbliche, biblioteche etc.

La distribuzione più usata è Raspbian, un Debian dedicato al processore ARM, che incorpora già buona parte di tutti i tool necessari.

16Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 17: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Media center

A poco più di 40 euro, è possibile costruire un Media Center di tutto rispetto, in grado di visualizzare (in Full-HD) praticamente tutti i file multimediali audio e video.

Tramite la connessione internet (Ethernet o Wi-Fi) è possibile inoltre visualizzare audio/video in streaming, Youtube, podcast e molto altro.

Il punto di partenza per questa applicazione è Raspmbc.(http://www.raspbmc.com/)

17Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 18: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi praticiGames/Retrogaming

Non poteva mancare un cenno all’aspetto ludico.In particolare, in relazione al retrogaming ed all’emulazione di

vecchi computer.La distro Chameleon del catalano Carles Oriol, è un eccellente

esempio di packaging di Raspbian + un’interfaccia utente in Python totalmente dedicata all’emulazione di console per videogiochi e vecchi computer.

Sta avendo notevole successo in quanto soluzione unica e completa per un numero molto elevato di piattaforme emulate e per la facilità di espansione.

(http://chameleon.enging.com/)

18Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 19: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Security testing.

Nell’ambito della security, la possibilità di avere un hardware di dimensioni e costi così ridotti amplia di molto le prospettive d’utilizzo.

La distro pwnpi è dedicata al penetration testing... ed è consigliata solo agli addetti ai lavori...

Dispone di più di 200 tool di analisi di rete in un’unica soluzione.

http://pwnpi.sourceforge.net/

19Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 20: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

File server con RPi?

Collegando ad un RPi un hard disk USB lo si può trasformare facilmente in un NAS.

Le varie distro supportano SMB, AFP e praticamente tutti i protocolli disponibili.

E’ possibile configurare anche un eccellente client bit-torrent a bassissimo costo…

20Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 21: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Web Server con Rpi?

Come ogni piattaforma Linux, è ovviamente possibile utilizzare un RPi come web server LAMP – Linux, Apache, MySQL, PHP.

In aggiunta, il forte supporto al linguaggio Python lo rende un ambiente di sviluppo.

Consiglio Raspbian Server Edition: distro server minimale ideale per lo sviluppo.

http://sirlagz.net/2012/12/31/raspbian-server-edition-version-2-2/

21Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 22: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Web Radio con Rpi?

Lo sviluppo di AirTime ha permesso di considerare l’opzione Raspberry Pi come hardware di supporto.

In pratica, utilizzando un buon HD per lo storage dei file mp3, è possibile costruire una Web Radio completamente controllata tramite interfaccia web a bassissimo costo (e con performance di tutto rispetto).

http://www.sourcefabric.org/en/community/blog/1574

22Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 23: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Super computer con Rpi?Si, è possibile costruire un cluster di Rpi…Simon Cox, professore all’università di Southampton ha creato,

con l’aiuto del figlio (!), un cluster a 64 nodi.Feature list:- 64 RPi,- Case in Lego- Linux, MPI, Python- Costo totale: circa £ 2200

http://www.southampton.ac.uk/~sjc/raspberrypi/

23Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 24: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Cloud server con RPi?

Grazie ad OwnCloud, un software OS, è possibile creare server cloud per la condivisione di file per piccoli gruppi di lavoro tramite WebDav.

http://owncloud.org/

24Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 25: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Quali utilizzi? Esempi pratici

Esempi Real world- Time lapse fotografico applicato a fotocamere Canon- Pilotaggio di Rover, sottomarini- Stampanti 3D- Controllo di stazioni Radio- Calibrazione di colore per miscelatori di vernici- FM Transmitter con un solo filo

- http://www.stefanopaganini.com/2013/02/01/raspberry-pi-fm-transmitter-one-short-wire-and-a-radio-let-you-broadcast-wav-files-vine-footage-included/

... Molto altro

25Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 26: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Sessione operativa

Cosa scaricarePartendo da Raspberry.org/downloads:- Raspbian Wheezy

- Cosa permette di fare?- Cosa è incluso

- Raspbmc- RSE

26Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 27: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Sessione operativa

Come collegarsi?

Il miglior amico di un Raspberry Pi è un client ssh sia esso PC, Mac o Linux (per PC è consigliato Putty).

Si tratta di connettersi in questo modo:ssh -l pi [indirizzo IP]

Come scoprire l’indirizzo IP del nostro RPi?

27Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 28: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Sessione operativa

Prime operazioni:- config.txt PAL- update debian- Connessione via ssh- Raspi-config -> Expand-rootfs

28Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 29: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Sessione operativa

Operazioni aggiuntive:• Wi-Fi: sono supportati molti dispositivi Wi-Fi

USB, in particolare quelli D-Link e 3Com. • Bluetooth: come per Wi-Fi, spesso Raspbian

individua automaticamente il dispositivo USB e ne suggerisce il chipset per il download dei driver appositi.

29Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 30: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: istruzioni e trucchi

Il principale tool di setup e configurazione del Rpi:sudo raspi-config

L’importanza del comando Expand-rootfs.

30Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 31: Venezia Camp 2013 Raspberry Pi Lab

Primi passi: istruzioni e trucchi

L’importanza del file /boot/config.txt

Problemi comuni:- Output audio- Output su HDMI vs. Composito

- Set stdv mode to PAL: sdtv_mode=2- http://elinux.org/Rpiconfig

- Modifiche possibili anche da PC/Mac su SD card

31Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 32: Venezia Camp 2013 Raspberry Pi Lab

Primi passi: istruzioni e trucchi

• Come utilizzare il Browser Midori in modalità Kiosk?– midori -i 30 -e Fullscreen -a "http://news.google.it/"

• VNC– È ovviamente possibile installare TightVNCServer

e collegarsi in remoto tramite qualsiasi client VNC (anche da iPad)• tightvncserver -geometry 1680x900

32Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 33: Venezia Camp 2013 Raspberry Pi Lab

Primi passi: istruzioni e trucchi

• Come catturare la schermata corrente: fbgrab• Può essere utile dover catturare la schermata corrente;

tramite fbgrab è possibile farlo in remoto, tramite ssh, posizionando mouse e finestre come desideriamo. Il risultato è un file .png o .jpg che possiamo includere all’interno di presentazioni e documentazioni.• Fbgrab va scaricato ed installato:

– sudo apt-get install fbgrab

• Viene poi lanciato come segue:– fbgrab -f screen.raw -w 1024 -h 768 -b 16 screen.png

33Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 34: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Linkoteca

Per cominciare:• Raspberry Pi foundation: http://www.raspberrypi.org• Raspbian: http://www.raspberrypi.org/downloads

• Media center Raspmbc: http://www.raspbmc.com• Configurazioni: http://elinux.org/RPiconfig• Chameleon Emulatori e Retrogaming:

http://chameleon.enging.com

34Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013

Page 35: Venezia Camp 2013 Raspberry Pi Lab

Raspberry Pi: Linkoteca

Per cominciare:• Raspberry Pi foundation: http://www.raspberrypi.org• Raspbian: http://www.raspberrypi.org/downloads• Media center Raspmbc: http://www.raspbmc.com• Configurazioni: http://elinux.org/RPiconfig• Chameleon Emulatori e Retrogaming:

http://chameleon.enging.com• Raspberry Pi Italian Community:

https://www.facebook.com/pages/Raspberry-Pi-Italian-Community/133970276781337?ref=hl

35Raspberry Pi Lab - Venezia Camp 2013 - Stefano Paganini - 4-2013