SlideShare une entreprise Scribd logo
1  sur  53
Télécharger pour lire hors ligne
Linux, Android e
Internet of Things
ITIS G.Galilei - San Secondo (PR)
1
Linux Embedded
Alcuni esempi di schede
in commercio
Linux Embedded Board
2
Raspberry PI
Linux embedded
Open Hardware e Low Cost
Raspberry PI
La Raspberry PI è un single-board computer (SBC) sviluppato
nel Regno Unito dalla Raspberry PI Foundation.
L’idea di base è la realizzazione di un dispositivo economico, concepito per stimolare
l’insegnamento di base dell’informatica e della programmazione nelle scuole.
Dal punto di vista hardware il progetto ruota attorno:
• System-on-a-chip (SoC) Broadcom BCM2835, che incorpora un processore
ARM1176JZF-S a 700 Mhz (overcloccabile da software)
• GPU VideoCore IV
• 256 (modello A), 512 (modello B) Megabyte o 1 Gigabyte (modello 2) di RAM
• Sistema Operativo su scheda SD per il boot e per la memoria non volatile. La scheda
è stata progettata per ospitare sistemi operativi basati su un kernel Linux o RISC OS.
• GPIO (26 o 40 pin)
• USB
• Ethernet Card
Doveva essere solo un Python Interpreter!!
La famiglia Raspberry PI
REV 1 MODEL B
È il modello più diffuso della Pi. Ha 512 Mb di Ram
REV 1 MODEL B – WITH LINKS
Questo modello ha dei collegamenti a 0 Ohm sulle USB invece che dei Polyfuses.
Questo aiuta in casi di sbalzi di tensione che si verificano sul modello precedente.
Ha introdotto però un bug di “hot-swapping” che resetta la scheda quando viene
inserito un dispositivo USB. Questo problema è stato risolto nella versione B+.
MODEL A
Identica al modello B solamente che ha 1 usb e 256 Mb di RAM.
COMPUTE MODULE
Lanciato a giugno 2014 per permettere l’integrazione della Pi a livello industriale. Il
modulo è stato fatto per essere integrato su un connettore SODIMM. Il vantaggio
di questo modulo è che ha integrato una memoria eMMC da 4GB e quindi non
necessita di una scheda SD per il sistema operativo.
MODEL B+
Lanciato a Luglio 2014. Ha subito grossi trasformazioni sia per il fattore di forma,
sia per il numero di GPIO (40), per il numero di USB (4) e migliorato il circuito di
alimentazione.
MODEL A+
Lanciato a Novembre 2014 ed è essenzialmente il modello B+ con solamente un
USB. È il modello più economico sia dal punto di vista del prezzo (solo 20$), sia dal
punto di vista dei consumi (0.5 Watt in idle).
Raspberry - le diverse board
Sei volte più veloce rispetto al primo modello, ma proposta ad un prezzo invariato (35$):
è la nuova scheda Raspberry Pi 2 equipaggiata con :
• 1 GB di RAM (LPDDR2 SDRAM)
• Processore quad core Broadcom BCM2836 da 900 MHz (ARM Cortex-A7).
• È possibile collegare fino a quattro dispositivi USB in contemporanea
• Tempi di boot dimezzati.
Raspberry PI 2
Il team responsabile del progetto, la Raspberry Pi
Foundation, ha già annunciato l'intenzione di
realizzarne una variante basata sull'architettura x86
compatibile con il sistema operativo Windows 10 di
Microsoft.
La lista della spesa
• Alimentatore 5V 2A Micro USB
• SD/MicroSD (a seconda del modello
di RPi utilizzata) da almeno 4GB
• Tastiera e Mouse USB
• Monitor HDMI
• cavo HDMI
• Cavo Ethernet
Raspberry PI - Le distribuzioni disponibili
Il punto di partenza è sicuramente NOOBS (New Out Of the Box Software)
www.raspberrypi.org/downloads
NOOBS è un software che fornisce una
pratica interfaccia per installare sulla
nostra Raspberry Pi qualsiasi
distribuzione Linux.
Appena installato consiste in una sorta
di immagine di recovery che viene
avviata al primo boot della Raspberry Pi,
e ci pone davanti ad una finestra di
dialogo che chiede quale sistema
operativo vogliamo installare.
Raspberry PI - Le distribuzioni disponibili
Raspberry PI - Le distribuzioni alternative
• Games/Retrogaming
Dal sito chameleon.enging.com potete scaricare una distribuzione
dedicata al retrogaming con l’emulazione di vecchi computer
(comodore 64, Atari, ecc)
• Secuirty
pwnpi (http://www.pwnpi.com/) è una distribuzione dedicata al
security testing. Dispone di più di 200 tool di analisi di rete.
3
Come configurare
la RPi
Esempi di configurazione della
Raspberry PI
Configurare l’SD
1. Scaricare il sistema operativo per il Raspberry Pi
RASPBIAN (*)
2. Scompattare il file che avete scaricato
Attendi il completamento della procedura, al termine
apparirà un file con estensione .img
3. Scarica Win32DiskImager (WINDOWS)
a) Scarica il file win32diskimager-binary.zip
da: https://launchpad.net/win32-image-writer/+download
b) Decomprimi il file .zip
c) Al termine della procedura verrà visualizzata una nuova directory chiamata
win32diskimager-binary
(*) Lista immagini RASPBIAN: http://downloads.raspberrypi.org/raspbian/images/
Configurare l’SD
4. Installare Raspbian sulla scheda SD
a) Collega la scheda SD al tuo PC
b) Accedete alla directory creata nel passaggio 3(b) ed avviate il file
Win32DiskImager.exe (se utilizzate Windows 7 o Windows 8 dovrete cliccare
con il tasto destro del mouse sul file e selezionare “Esegui come
amministratore”). Vi verrà mostrata una schermata come questa:
c) Se la vostra scheda SD non compare automaticamente nella sezione Device
dovrete andare a selezionarla manualmente dall’apposita tendina
d) Nella sezione Image File selezionate il file .img di Rabian che avete scaricato
e decompresso (punto 2b)
e) Clicca su Write
f) La procedura richiede alcuni minuti, al termine la scheda SD potrà essere
usata sul vostro Raspberry Pi
Primo accesso
a) Collegare tutti i cavi necessari
b) Al primo avvio apparirà la finestra Raspi-config
c) Potete modificare la configurazione ad esempio le voci
international options se necessario
d) Se è vostra intenzione utilizzare la parte desktop abilitarla
all’apposito menù Enable boot to Desktop
e) In fine selezionate Expand Filesystem e digitate ‘yes’
per eseguire il reboot
Primo accesso - HDMI
Primo accesso - HDMI
Accesso da rete - Ethernet
Se non volete visualizzare la parte desktop e/o non avete la
possibilità di utilizzare un monitor, potete utilizzare la Rpi in SSH.
Dovete scoprire l’indirizzo IP della RPi.:
• Accedendo al router e vedere i dispositivi collegati
• Utilizzare dal vostro PC un tool chiamato IPScan che trova i dispositivi
collegati in rete (che rispondono alla porta ICMP)
• Attaccare un monitor alla RPi e, attraverso il terminale, digitare il comando
ifconfig per visualizzare il proprio indirizzo IP
Accesso da rete - Ethernet
Credenziali di DEFAULT
Username: pi
Password: raspberry
Accesso da rete - WiFi
Accesso da rete - WiFi
Per configurare una connessione WiFi è possibile farlo in 3 modi:
• Attraverso l’interfaccia grafica
Sulla RPi è installato un software chiamato
WiFi config che permette la configurazione
immediata di una rete WiFi.
• Attraverso l’ethernet
Bisogna modificare i seguenti file:
/etc/network/interfaces
/etc/wpa_supplicant/wpa_supplicant.conf
• Wicd-curses
sudo apt-get install wicd-curses
Accesso da rete - WiFi
Esempio di una configurazione di /etc/network/interfaces
auto lo
iface lo inet loopback
auto eth0
allow-hotplug eth0
iface eth0 inet dhcp
#auto wlan0
allow-hotplug wlan0
iface wlan0 inet manual
wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
iface home inet static
address 192.168.0.157
netmask 255.255.255.0
broadcast 192.168.0.255
gateway 192.168.0.1
iface default inet dhcp
Accesso da rete - WiFi
/etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="****"
scan_ssid=1
# Protocol type can be: RSN (for WP2) and WPA (for WPA1)
proto=WPA
# Key management type can be: WPA-PSK or WPA-EAP
key_mgmt=WPA-PSK
pairwise=CCMP TKIP
group=CCMP TKIP
psk="****"
id_str="home"
priority=5
}
4
Cosa fare con la RPi
Esempi di utilizzo della Raspberry PI
Scratch https://scratch.mit.edu/scratch_1.4/
http://www.pd.infn.it/~lacaprar/ProgettoScuola/Scratch/
Python
http://www.raspberrypi.org/documentation/usage/python/
Wolfram http://www.wolfram.com/raspberry-pi/
http://www.raspberrypi.org/learning/getting-started-with-mathematica/
http://www.raspberrypi.org/controlling-telescopes-with-raspberry-pi-and-mathematica/
Wolfram http://www.wolfram.com/raspberry-pi/
http://blog.stephenwolfram.com/2013/11/putting-the-wolfram-
language-and-mathematica-on-every-raspberry-pi/
WEB SERVER
Ethernet
Wifi
WEB SERVER
INSTALLARE LO STACK LAMPP
• sudo apt-get install apache2 php5 libapache2-mod-php5 mysql-
server mysql-client php5-mysql phpmyadmin vsftpd -y
• sudo chown -R pi /var/www
• sudo nano /etc/vsftpd.conf
#EDIT THE FOLLOWING LINES
 anonymous_enable=YES to anonymous_enable=NO
 Uncomment local_enable=YES and write_enable=YES by deleting the # symbol
in front of each line
 then go to the bottom of the file and add force_dot_files=YES.
• ln -s /var/www/ ~/www
• sudo reboot
WEB SERVER
WEB SERVER
FILE SERVER
USB
FILE SERVER
Raspbian, essendo una distribuzione derivata da Debian, ha il vantaggio di supportare
una moltitudine di protocolli: FTP, SMB, WEBDAV etc.
Per questa ragione, collocando un Raspberry Pi in una rete, è abbastanza facile
condividere le sue risorse col resto dalla LAN. Se a questo aggiungiamo la possiblità di
collegare un Hard Disk esterno o una penna USB di alta capacità, capiamo subito di
quanto sia facile condividere dei file o trasformarlo in un client bit- torrent sempre
attivo e disponibile, con un consumo di corrente paragonabile a quello di un cellulare.
Una volta collegato l’hard disk alla Raspberry eseguire il seguente comando da
terminale:
sudo apt-get install ntfs-3g
Questo è un tool per formattare i dischi in NTFS. È necessario formattare l’hard disk in
questa modalità per vedere il disco su linux, ma anche per trasferire file maggiori di
2GB (cosa che FAT32 non permette).
FILE SERVER
Una volta installato il programma digitare il seguente comando per visualizzare le
partizioni presenti (devono essere almeno due):
sudo fdisk -l
SD
HARD DISK
FILE SERVER
Prima di montare i dischi nel filesystem bisogna creare la cartella dove verrano inseriti
tutti i file:
• sudo mkdir /media/USBHDD
Ora si può procedere a montare l’hard disk:
• sudo mount -t auto /dev/sda1 /media/USBHDD
A questo punto bisogna creare una cartella condivisa che poi sarà visualizzabile in rete
da qualsiasi host:
• sudo mkdir /media/USBHDD/shares
FILE SERVER
È arrivato il momento di installare SAMBA. Questo è un servizio che permette di
accedere ad una cartella condivisa in rete su sistemi UNIX:
• sudo apt-get install samba samba-common-bin
Una volta installato, prima di fare qualsiasi cosa, bisogna configurare Samba. Per questo
bisogna modificare il seguente file (prima facciamo un backup del file originale):
• sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old
• sudo nano /etc/samba/smb.conf
FILE SERVER
La prima cosa da notare è l'identificativo del gruppo di lavoro, per impostazione
predefinita workgroup = WORKGROUP. Se si utilizza un nome diverso modificarlo,
altrimenti lasciare come predefinito.
La nostra prossima tappa è di attivare l'autenticazione dell'utente per il nostro
stoccaggio samba, altrimenti chiunque abbia accesso generale alla nostra rete (come
ospiti gli utenti Wi-Fi), sarà in grado di visualizzare il contenuto della cartella. Scorrere
verso in basso nel file di configurazione di Samba fino ad arrivare al sezione che recita:
Togliere il simbolo # dalla linea security = user per consentire la verifica nome utente /
password per le condivisioni Samba.
FILE SERVER
Ora aggiungere una nuova sezione al file di configurazione. Scorrere fino in fondo fino
alla fine del file e inserire il testo seguente:
[Backup]
comment = Backup Folder
path = /media/USBHDD/shares
valid users = @users
force group = users
create mask = 0660
directory mask = 0771
read only = no
Premere CTRL + X per uscire, premere Y quando viene chiesto se si desidera mantenere
le modifiche e sovrascrivere il file di configurazione esistente. Una volta tornati al
prompt dei comandi digitare il seguente comando per riavviare i demoni di Samba:
• sudo /etc/init.d/samba restart
FILE SERVER
A questo punto abbiamo bisogno di aggiungere un utente che può accedere alle
condivisioni Samba del Pi.
Username: backups
Password: backups4ever
È possibile impostare il nome utente e la password a piacere. Per farlo digitare i
seguenti comandi:
• sudo useradd backups -m -G users
• sudo passwd backups
Verrà richiesto di digitare la password due volte per confermare. Dopo aver confermato
la password, è il momento di aggiungere "backup", come un utente legittimo Samba.
Immettere il seguente comando:
• sudo smbpasswd -a backups
Immettere la password per l'account di backup quando richiesto.
FILE SERVER
Ora da Windows (o da altri sistemi Samba-capable) è possibile visualizzare il contenuto
della cartella condivisa:
• Aggiungere una nuova risorsa di rete con hostname RASPBERRYPI (o l’hostname
della vostra RPi).
• Immettere utente e password inseriti nel passo precedente.
SMART DISPLAY
HDMI
RCA
SMART DISPLAY
SMART DISPLAY
• CodeIgniter is a powerful open-source PHP framework with a very small
footprint
• DukeScript, fornisce agli sviluppatori Java un modo per costruire applicazioni
HTML5 e JavaScript nel comfort del linguaggio Java.
• Vaadin è un framework Java per la creazione di applicazioni web moderne .
• Java Server Faces (JSF), un framework java basato sul design pattern
architetturale Model-View-Controller
• D3.js è una libreria JavaScript per manipolare i documenti in base ai dati in
diversi formati.
• HIGHCHARTS, è una libreria JavaScript che permettere di generare grafici in
modo semplice e veloce.
• HTMLWidgets - http://www.htmlwidgets.org/, libreria in javascript per
creare grafici con Rstudio (AVANZATA)
• Leafletjs, è una moderna libreria Javascript per le mappe interattive mobile-
friendly basate su OpenStreetMap.
SENSING STATION
GPIO
SENSING STATION
SENSING STATION
Downloading the Code from Github
• sudo apt-get install git
• git clone
https://github.com/adafruit/Adafruit_Python_DHT.git
• cd Adafruit_Python_DHT
Installare la libreria
• sudo apt-get update
• sudo apt-get install build-essential python-dev
• sudo python setup.py install
Testare la libreria
• cd examples
Per eseguire il codice d’esempio, digitare il seguente commando (il sensore è
collegato in questo caso al GPIO#4):
• sudo ./AdafruitDHT.py 22 4
Tutorial
Thanks!
ANY QUESTIONS?
You can find me at:
mirko.mancin@gmail.com
CREDITS
Special thanks to all the people who made and released these awesome
resources for free:
▪ Busy Icons by Olly Holovchenko
▪ Presentation template by SlidesCarnival
▪ Photographs by Unsplash
▪ Source slide
▪ Introduzione alla Rpi (1)
▪ Introduzione alla Rpi (2)
▪ Guida RPi
▪ http://wasnlab.tlc.unipr.it
This template is free to use under Creative Commons
Attribution license. If you use the graphic assets (photos,
icons and typographies) provided with this presentation you
must keep the Credits slide.

Contenu connexe

Tendances

Matteo baccan raspberry pi - linox 2015 - corso parte 1
Matteo baccan   raspberry pi - linox 2015 - corso parte 1Matteo baccan   raspberry pi - linox 2015 - corso parte 1
Matteo baccan raspberry pi - linox 2015 - corso parte 1Matteo Baccan
 
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...Marco Cavallini
 
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...Matteo Baccan
 
Installare i server via rete con Cobbler
Installare i server via rete con CobblerInstallare i server via rete con Cobbler
Installare i server via rete con CobblerBabel
 
Installazione Linux
Installazione LinuxInstallazione Linux
Installazione Linuxarock84
 
Matteo baccan raspberry pi - linox 2014
Matteo baccan   raspberry pi - linox 2014Matteo baccan   raspberry pi - linox 2014
Matteo baccan raspberry pi - linox 2014Matteo Baccan
 
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...Matteo Baccan
 
Raspberry Pi - Il computer che hai sempre voluto avere
Raspberry Pi - Il computer che hai sempre voluto avereRaspberry Pi - Il computer che hai sempre voluto avere
Raspberry Pi - Il computer che hai sempre voluto avereNicola Corti
 
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linux
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linuxTrace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linux
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linuxDeveler S.r.l.
 
BeRTOS: Sistema Real Time Embedded Free
BeRTOS: Sistema Real Time Embedded FreeBeRTOS: Sistema Real Time Embedded Free
BeRTOS: Sistema Real Time Embedded FreeDeveler S.r.l.
 
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...Codemotion
 
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioniGalliate Linux User Group
 
Matteo baccan raspberry pi - linox 2015 - corso parte 2
Matteo baccan   raspberry pi - linox 2015 - corso parte 2Matteo baccan   raspberry pi - linox 2015 - corso parte 2
Matteo baccan raspberry pi - linox 2015 - corso parte 2Matteo Baccan
 
Un Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo ModemUn Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo ModemMarco Scaloni
 

Tendances (20)

Matteo baccan raspberry pi - linox 2015 - corso parte 1
Matteo baccan   raspberry pi - linox 2015 - corso parte 1Matteo baccan   raspberry pi - linox 2015 - corso parte 1
Matteo baccan raspberry pi - linox 2015 - corso parte 1
 
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
ArduinoDay17 - Creazione di un piccolo supercomputer con Raspberry PI per cal...
 
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...
Codemotion 2013: Succo di lampone: come ottimizzare JAVA e PHP su un’architet...
 
Linux console
Linux consoleLinux console
Linux console
 
Installare i server via rete con Cobbler
Installare i server via rete con CobblerInstallare i server via rete con Cobbler
Installare i server via rete con Cobbler
 
Installazione Linux
Installazione LinuxInstallazione Linux
Installazione Linux
 
Matteo baccan raspberry pi - linox 2014
Matteo baccan   raspberry pi - linox 2014Matteo baccan   raspberry pi - linox 2014
Matteo baccan raspberry pi - linox 2014
 
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...
Creazione di una stazione meteo con prodotti opensource. Linux day 2014 - Lin...
 
APT per RPM
APT per RPMAPT per RPM
APT per RPM
 
Raspberry Pi - Il computer che hai sempre voluto avere
Raspberry Pi - Il computer che hai sempre voluto avereRaspberry Pi - Il computer che hai sempre voluto avere
Raspberry Pi - Il computer che hai sempre voluto avere
 
Openmoko
OpenmokoOpenmoko
Openmoko
 
LTSP
LTSPLTSP
LTSP
 
Progetto Netkit
Progetto NetkitProgetto Netkit
Progetto Netkit
 
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linux
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linuxTrace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linux
Trace32 lo-strumento-piu-completo-per-il-debug-di-un-sistema-linux
 
BeRTOS: Sistema Real Time Embedded Free
BeRTOS: Sistema Real Time Embedded FreeBeRTOS: Sistema Real Time Embedded Free
BeRTOS: Sistema Real Time Embedded Free
 
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un'architettura Raspberry Pi...
 
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni
[Ubuntu per tutti] 2, La struttura del sistema e prime operazioni
 
Matteo baccan raspberry pi - linox 2015 - corso parte 2
Matteo baccan   raspberry pi - linox 2015 - corso parte 2Matteo baccan   raspberry pi - linox 2015 - corso parte 2
Matteo baccan raspberry pi - linox 2015 - corso parte 2
 
Un Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo ModemUn Pinguino Nel Tuo Modem
Un Pinguino Nel Tuo Modem
 
Riutilizzo di risorve video
Riutilizzo di risorve videoRiutilizzo di risorve video
Riutilizzo di risorve video
 

Similaire à CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things

Raspberry omv
Raspberry omvRaspberry omv
Raspberry omvPipperss
 
Introduzione a RaspBerry PI
Introduzione a RaspBerry PIIntroduzione a RaspBerry PI
Introduzione a RaspBerry PIPaolo Aliverti
 
Retropie - il futuro nel passato
Retropie - il futuro nel passatoRetropie - il futuro nel passato
Retropie - il futuro nel passatoPaoloGuagnano1
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embeddedDaniele Costarella
 
Seminario Raspberri Pi - Parte 2 - GULP
Seminario Raspberri Pi - Parte 2 - GULPSeminario Raspberri Pi - Parte 2 - GULP
Seminario Raspberri Pi - Parte 2 - GULPNicola Corti
 
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26Ionela
 
Richiami su Linux - Webmin - Reti di calcolatori
Richiami su Linux - Webmin - Reti di calcolatoriRichiami su Linux - Webmin - Reti di calcolatori
Richiami su Linux - Webmin - Reti di calcolatoriFulvio Corno
 
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...Codemotion
 
Arduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteArduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteMirco Sbrollini
 
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook Roberto Innocenti
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazioneDaniele Costarella
 
Installazione ambientepython ubuntumate
Installazione ambientepython ubuntumateInstallazione ambientepython ubuntumate
Installazione ambientepython ubuntumateMarco Buttolo
 
Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Andrea Tosato
 
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxMarco Ferrigno
 
Il dual boot scolastico perfetto (2012)
Il dual boot scolastico perfetto (2012)Il dual boot scolastico perfetto (2012)
Il dual boot scolastico perfetto (2012)Marcello Missiroli
 

Similaire à CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things (20)

Raspberry omv
Raspberry omvRaspberry omv
Raspberry omv
 
Introduzione a RaspBerry PI
Introduzione a RaspBerry PIIntroduzione a RaspBerry PI
Introduzione a RaspBerry PI
 
Retropie - il futuro nel passato
Retropie - il futuro nel passatoRetropie - il futuro nel passato
Retropie - il futuro nel passato
 
Raspberry
RaspberryRaspberry
Raspberry
 
Software libero nei sistemi embedded
Software libero nei sistemi embeddedSoftware libero nei sistemi embedded
Software libero nei sistemi embedded
 
Seminario Raspberri Pi - Parte 2 - GULP
Seminario Raspberri Pi - Parte 2 - GULPSeminario Raspberri Pi - Parte 2 - GULP
Seminario Raspberri Pi - Parte 2 - GULP
 
Windows 10 IoT
Windows 10 IoTWindows 10 IoT
Windows 10 IoT
 
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
Mpc8308 rdb piattaforma di riferimento della freescale - recensione - 2010-10-26
 
Richiami su Linux - Webmin - Reti di calcolatori
Richiami su Linux - Webmin - Reti di calcolatoriRichiami su Linux - Webmin - Reti di calcolatori
Richiami su Linux - Webmin - Reti di calcolatori
 
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...
Succo di lampone: come ottimizzare JAVA e PHP su un’architettura Raspberry Pi...
 
Arduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincenteArduino&raspberry pi - Un connubio vincente
Arduino&raspberry pi - Un connubio vincente
 
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook
Linux Day 2016 Milano - Open Source Hardware PowerPC Notebook
 
Conferenza Pymaemo
Conferenza PymaemoConferenza Pymaemo
Conferenza Pymaemo
 
DHow2 - L5
DHow2 - L5DHow2 - L5
DHow2 - L5
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazione
 
Installazione ambientepython ubuntumate
Installazione ambientepython ubuntumateInstallazione ambientepython ubuntumate
Installazione ambientepython ubuntumate
 
Service Backup Online
Service Backup OnlineService Backup Online
Service Backup Online
 
Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018Azure IoTHub - Roboval 2018
Azure IoTHub - Roboval 2018
 
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel LinuxPIT2012: Workshop@UniNA - Compilazione del Kernel Linux
PIT2012: Workshop@UniNA - Compilazione del Kernel Linux
 
Il dual boot scolastico perfetto (2012)
Il dual boot scolastico perfetto (2012)Il dual boot scolastico perfetto (2012)
Il dual boot scolastico perfetto (2012)
 

Plus de Mirko Mancin

Tesi Magistrale 2014
Tesi Magistrale 2014Tesi Magistrale 2014
Tesi Magistrale 2014Mirko Mancin
 
Lezione 4 arduino - corso 20 ore
Lezione 4 arduino - corso 20 oreLezione 4 arduino - corso 20 ore
Lezione 4 arduino - corso 20 oreMirko Mancin
 
Lezione 3 arduino - corso 20 ore
Lezione 3 arduino - corso 20 oreLezione 3 arduino - corso 20 ore
Lezione 3 arduino - corso 20 oreMirko Mancin
 
Lezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 oreLezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 oreMirko Mancin
 
Lezione 1 arduino - corso 20 ore
Lezione 1 arduino - corso 20 oreLezione 1 arduino - corso 20 ore
Lezione 1 arduino - corso 20 oreMirko Mancin
 
Lezione introduttiva su Arduino
Lezione introduttiva su ArduinoLezione introduttiva su Arduino
Lezione introduttiva su ArduinoMirko Mancin
 
Kangaroo system - send/receive program to/from CNC machine
Kangaroo system - send/receive program to/from CNC machineKangaroo system - send/receive program to/from CNC machine
Kangaroo system - send/receive program to/from CNC machineMirko Mancin
 
Wireless Open Weather (WOW)
Wireless Open Weather (WOW)Wireless Open Weather (WOW)
Wireless Open Weather (WOW)Mirko Mancin
 

Plus de Mirko Mancin (10)

Tesi Triennale
Tesi TriennaleTesi Triennale
Tesi Triennale
 
Tesi Magistrale 2014
Tesi Magistrale 2014Tesi Magistrale 2014
Tesi Magistrale 2014
 
Arduino&Raspberry
Arduino&RaspberryArduino&Raspberry
Arduino&Raspberry
 
Lezione 4 arduino - corso 20 ore
Lezione 4 arduino - corso 20 oreLezione 4 arduino - corso 20 ore
Lezione 4 arduino - corso 20 ore
 
Lezione 3 arduino - corso 20 ore
Lezione 3 arduino - corso 20 oreLezione 3 arduino - corso 20 ore
Lezione 3 arduino - corso 20 ore
 
Lezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 oreLezione 2 arduino - corso 20 ore
Lezione 2 arduino - corso 20 ore
 
Lezione 1 arduino - corso 20 ore
Lezione 1 arduino - corso 20 oreLezione 1 arduino - corso 20 ore
Lezione 1 arduino - corso 20 ore
 
Lezione introduttiva su Arduino
Lezione introduttiva su ArduinoLezione introduttiva su Arduino
Lezione introduttiva su Arduino
 
Kangaroo system - send/receive program to/from CNC machine
Kangaroo system - send/receive program to/from CNC machineKangaroo system - send/receive program to/from CNC machine
Kangaroo system - send/receive program to/from CNC machine
 
Wireless Open Weather (WOW)
Wireless Open Weather (WOW)Wireless Open Weather (WOW)
Wireless Open Weather (WOW)
 

Dernier

Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO Pierpaolo
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO PierpaoloGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO Pierpaolo
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO PierpaoloServizi a rete
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA Rosario
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA RosarioGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA Rosario
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA RosarioServizi a rete
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA Lucia
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA LuciaGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA Lucia
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA LuciaServizi a rete
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO MarcoGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO MarcoServizi a rete
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA MarcoGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA MarcoServizi a rete
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSO
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSOGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSO
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSOServizi a rete
 

Dernier (6)

Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO Pierpaolo
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO PierpaoloGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO Pierpaolo
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | RUGIERO Pierpaolo
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA Rosario
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA RosarioGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA Rosario
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | MAZZOLA Rosario
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA Lucia
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA LuciaGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA Lucia
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | COSTA Lucia
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO MarcoGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | CESARO Marco
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA MarcoGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA Marco
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | FARINA Marco
 
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSO
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSOGiornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSO
Giornata tecnica da Acque del Chiampo, 27 marzo 2024 | BERTALLI+RUSSO
 

CodingGym - Lezione 2 - Corso Linux, Android e Internet of Things

  • 1. Linux, Android e Internet of Things ITIS G.Galilei - San Secondo (PR)
  • 2. 1 Linux Embedded Alcuni esempi di schede in commercio
  • 5. Raspberry PI La Raspberry PI è un single-board computer (SBC) sviluppato nel Regno Unito dalla Raspberry PI Foundation. L’idea di base è la realizzazione di un dispositivo economico, concepito per stimolare l’insegnamento di base dell’informatica e della programmazione nelle scuole. Dal punto di vista hardware il progetto ruota attorno: • System-on-a-chip (SoC) Broadcom BCM2835, che incorpora un processore ARM1176JZF-S a 700 Mhz (overcloccabile da software) • GPU VideoCore IV • 256 (modello A), 512 (modello B) Megabyte o 1 Gigabyte (modello 2) di RAM • Sistema Operativo su scheda SD per il boot e per la memoria non volatile. La scheda è stata progettata per ospitare sistemi operativi basati su un kernel Linux o RISC OS. • GPIO (26 o 40 pin) • USB • Ethernet Card Doveva essere solo un Python Interpreter!!
  • 7. REV 1 MODEL B È il modello più diffuso della Pi. Ha 512 Mb di Ram REV 1 MODEL B – WITH LINKS Questo modello ha dei collegamenti a 0 Ohm sulle USB invece che dei Polyfuses. Questo aiuta in casi di sbalzi di tensione che si verificano sul modello precedente. Ha introdotto però un bug di “hot-swapping” che resetta la scheda quando viene inserito un dispositivo USB. Questo problema è stato risolto nella versione B+. MODEL A Identica al modello B solamente che ha 1 usb e 256 Mb di RAM. COMPUTE MODULE Lanciato a giugno 2014 per permettere l’integrazione della Pi a livello industriale. Il modulo è stato fatto per essere integrato su un connettore SODIMM. Il vantaggio di questo modulo è che ha integrato una memoria eMMC da 4GB e quindi non necessita di una scheda SD per il sistema operativo. MODEL B+ Lanciato a Luglio 2014. Ha subito grossi trasformazioni sia per il fattore di forma, sia per il numero di GPIO (40), per il numero di USB (4) e migliorato il circuito di alimentazione. MODEL A+ Lanciato a Novembre 2014 ed è essenzialmente il modello B+ con solamente un USB. È il modello più economico sia dal punto di vista del prezzo (solo 20$), sia dal punto di vista dei consumi (0.5 Watt in idle). Raspberry - le diverse board
  • 8. Sei volte più veloce rispetto al primo modello, ma proposta ad un prezzo invariato (35$): è la nuova scheda Raspberry Pi 2 equipaggiata con : • 1 GB di RAM (LPDDR2 SDRAM) • Processore quad core Broadcom BCM2836 da 900 MHz (ARM Cortex-A7). • È possibile collegare fino a quattro dispositivi USB in contemporanea • Tempi di boot dimezzati. Raspberry PI 2 Il team responsabile del progetto, la Raspberry Pi Foundation, ha già annunciato l'intenzione di realizzarne una variante basata sull'architettura x86 compatibile con il sistema operativo Windows 10 di Microsoft.
  • 9. La lista della spesa • Alimentatore 5V 2A Micro USB • SD/MicroSD (a seconda del modello di RPi utilizzata) da almeno 4GB • Tastiera e Mouse USB • Monitor HDMI • cavo HDMI • Cavo Ethernet
  • 10.
  • 11. Raspberry PI - Le distribuzioni disponibili Il punto di partenza è sicuramente NOOBS (New Out Of the Box Software) www.raspberrypi.org/downloads NOOBS è un software che fornisce una pratica interfaccia per installare sulla nostra Raspberry Pi qualsiasi distribuzione Linux. Appena installato consiste in una sorta di immagine di recovery che viene avviata al primo boot della Raspberry Pi, e ci pone davanti ad una finestra di dialogo che chiede quale sistema operativo vogliamo installare.
  • 12. Raspberry PI - Le distribuzioni disponibili
  • 13. Raspberry PI - Le distribuzioni alternative • Games/Retrogaming Dal sito chameleon.enging.com potete scaricare una distribuzione dedicata al retrogaming con l’emulazione di vecchi computer (comodore 64, Atari, ecc) • Secuirty pwnpi (http://www.pwnpi.com/) è una distribuzione dedicata al security testing. Dispone di più di 200 tool di analisi di rete.
  • 14.
  • 15. 3 Come configurare la RPi Esempi di configurazione della Raspberry PI
  • 16. Configurare l’SD 1. Scaricare il sistema operativo per il Raspberry Pi RASPBIAN (*) 2. Scompattare il file che avete scaricato Attendi il completamento della procedura, al termine apparirà un file con estensione .img 3. Scarica Win32DiskImager (WINDOWS) a) Scarica il file win32diskimager-binary.zip da: https://launchpad.net/win32-image-writer/+download b) Decomprimi il file .zip c) Al termine della procedura verrà visualizzata una nuova directory chiamata win32diskimager-binary (*) Lista immagini RASPBIAN: http://downloads.raspberrypi.org/raspbian/images/
  • 17. Configurare l’SD 4. Installare Raspbian sulla scheda SD a) Collega la scheda SD al tuo PC b) Accedete alla directory creata nel passaggio 3(b) ed avviate il file Win32DiskImager.exe (se utilizzate Windows 7 o Windows 8 dovrete cliccare con il tasto destro del mouse sul file e selezionare “Esegui come amministratore”). Vi verrà mostrata una schermata come questa: c) Se la vostra scheda SD non compare automaticamente nella sezione Device dovrete andare a selezionarla manualmente dall’apposita tendina d) Nella sezione Image File selezionate il file .img di Rabian che avete scaricato e decompresso (punto 2b) e) Clicca su Write f) La procedura richiede alcuni minuti, al termine la scheda SD potrà essere usata sul vostro Raspberry Pi
  • 18.
  • 19. Primo accesso a) Collegare tutti i cavi necessari b) Al primo avvio apparirà la finestra Raspi-config c) Potete modificare la configurazione ad esempio le voci international options se necessario d) Se è vostra intenzione utilizzare la parte desktop abilitarla all’apposito menù Enable boot to Desktop e) In fine selezionate Expand Filesystem e digitate ‘yes’ per eseguire il reboot
  • 22. Accesso da rete - Ethernet Se non volete visualizzare la parte desktop e/o non avete la possibilità di utilizzare un monitor, potete utilizzare la Rpi in SSH. Dovete scoprire l’indirizzo IP della RPi.: • Accedendo al router e vedere i dispositivi collegati • Utilizzare dal vostro PC un tool chiamato IPScan che trova i dispositivi collegati in rete (che rispondono alla porta ICMP) • Attaccare un monitor alla RPi e, attraverso il terminale, digitare il comando ifconfig per visualizzare il proprio indirizzo IP
  • 23. Accesso da rete - Ethernet Credenziali di DEFAULT Username: pi Password: raspberry
  • 24. Accesso da rete - WiFi
  • 25. Accesso da rete - WiFi Per configurare una connessione WiFi è possibile farlo in 3 modi: • Attraverso l’interfaccia grafica Sulla RPi è installato un software chiamato WiFi config che permette la configurazione immediata di una rete WiFi. • Attraverso l’ethernet Bisogna modificare i seguenti file: /etc/network/interfaces /etc/wpa_supplicant/wpa_supplicant.conf • Wicd-curses sudo apt-get install wicd-curses
  • 26. Accesso da rete - WiFi Esempio di una configurazione di /etc/network/interfaces auto lo iface lo inet loopback auto eth0 allow-hotplug eth0 iface eth0 inet dhcp #auto wlan0 allow-hotplug wlan0 iface wlan0 inet manual wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf iface home inet static address 192.168.0.157 netmask 255.255.255.0 broadcast 192.168.0.255 gateway 192.168.0.1 iface default inet dhcp
  • 27. Accesso da rete - WiFi /etc/wpa_supplicant/wpa_supplicant.conf ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="****" scan_ssid=1 # Protocol type can be: RSN (for WP2) and WPA (for WPA1) proto=WPA # Key management type can be: WPA-PSK or WPA-EAP key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP psk="****" id_str="home" priority=5 }
  • 28. 4 Cosa fare con la RPi Esempi di utilizzo della Raspberry PI
  • 34. WEB SERVER INSTALLARE LO STACK LAMPP • sudo apt-get install apache2 php5 libapache2-mod-php5 mysql- server mysql-client php5-mysql phpmyadmin vsftpd -y • sudo chown -R pi /var/www • sudo nano /etc/vsftpd.conf #EDIT THE FOLLOWING LINES  anonymous_enable=YES to anonymous_enable=NO  Uncomment local_enable=YES and write_enable=YES by deleting the # symbol in front of each line  then go to the bottom of the file and add force_dot_files=YES. • ln -s /var/www/ ~/www • sudo reboot
  • 38. FILE SERVER Raspbian, essendo una distribuzione derivata da Debian, ha il vantaggio di supportare una moltitudine di protocolli: FTP, SMB, WEBDAV etc. Per questa ragione, collocando un Raspberry Pi in una rete, è abbastanza facile condividere le sue risorse col resto dalla LAN. Se a questo aggiungiamo la possiblità di collegare un Hard Disk esterno o una penna USB di alta capacità, capiamo subito di quanto sia facile condividere dei file o trasformarlo in un client bit- torrent sempre attivo e disponibile, con un consumo di corrente paragonabile a quello di un cellulare. Una volta collegato l’hard disk alla Raspberry eseguire il seguente comando da terminale: sudo apt-get install ntfs-3g Questo è un tool per formattare i dischi in NTFS. È necessario formattare l’hard disk in questa modalità per vedere il disco su linux, ma anche per trasferire file maggiori di 2GB (cosa che FAT32 non permette).
  • 39. FILE SERVER Una volta installato il programma digitare il seguente comando per visualizzare le partizioni presenti (devono essere almeno due): sudo fdisk -l SD HARD DISK
  • 40. FILE SERVER Prima di montare i dischi nel filesystem bisogna creare la cartella dove verrano inseriti tutti i file: • sudo mkdir /media/USBHDD Ora si può procedere a montare l’hard disk: • sudo mount -t auto /dev/sda1 /media/USBHDD A questo punto bisogna creare una cartella condivisa che poi sarà visualizzabile in rete da qualsiasi host: • sudo mkdir /media/USBHDD/shares
  • 41. FILE SERVER È arrivato il momento di installare SAMBA. Questo è un servizio che permette di accedere ad una cartella condivisa in rete su sistemi UNIX: • sudo apt-get install samba samba-common-bin Una volta installato, prima di fare qualsiasi cosa, bisogna configurare Samba. Per questo bisogna modificare il seguente file (prima facciamo un backup del file originale): • sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.old • sudo nano /etc/samba/smb.conf
  • 42. FILE SERVER La prima cosa da notare è l'identificativo del gruppo di lavoro, per impostazione predefinita workgroup = WORKGROUP. Se si utilizza un nome diverso modificarlo, altrimenti lasciare come predefinito. La nostra prossima tappa è di attivare l'autenticazione dell'utente per il nostro stoccaggio samba, altrimenti chiunque abbia accesso generale alla nostra rete (come ospiti gli utenti Wi-Fi), sarà in grado di visualizzare il contenuto della cartella. Scorrere verso in basso nel file di configurazione di Samba fino ad arrivare al sezione che recita: Togliere il simbolo # dalla linea security = user per consentire la verifica nome utente / password per le condivisioni Samba.
  • 43. FILE SERVER Ora aggiungere una nuova sezione al file di configurazione. Scorrere fino in fondo fino alla fine del file e inserire il testo seguente: [Backup] comment = Backup Folder path = /media/USBHDD/shares valid users = @users force group = users create mask = 0660 directory mask = 0771 read only = no Premere CTRL + X per uscire, premere Y quando viene chiesto se si desidera mantenere le modifiche e sovrascrivere il file di configurazione esistente. Una volta tornati al prompt dei comandi digitare il seguente comando per riavviare i demoni di Samba: • sudo /etc/init.d/samba restart
  • 44. FILE SERVER A questo punto abbiamo bisogno di aggiungere un utente che può accedere alle condivisioni Samba del Pi. Username: backups Password: backups4ever È possibile impostare il nome utente e la password a piacere. Per farlo digitare i seguenti comandi: • sudo useradd backups -m -G users • sudo passwd backups Verrà richiesto di digitare la password due volte per confermare. Dopo aver confermato la password, è il momento di aggiungere "backup", come un utente legittimo Samba. Immettere il seguente comando: • sudo smbpasswd -a backups Immettere la password per l'account di backup quando richiesto.
  • 45. FILE SERVER Ora da Windows (o da altri sistemi Samba-capable) è possibile visualizzare il contenuto della cartella condivisa: • Aggiungere una nuova risorsa di rete con hostname RASPBERRYPI (o l’hostname della vostra RPi). • Immettere utente e password inseriti nel passo precedente.
  • 48. SMART DISPLAY • CodeIgniter is a powerful open-source PHP framework with a very small footprint • DukeScript, fornisce agli sviluppatori Java un modo per costruire applicazioni HTML5 e JavaScript nel comfort del linguaggio Java. • Vaadin è un framework Java per la creazione di applicazioni web moderne . • Java Server Faces (JSF), un framework java basato sul design pattern architetturale Model-View-Controller • D3.js è una libreria JavaScript per manipolare i documenti in base ai dati in diversi formati. • HIGHCHARTS, è una libreria JavaScript che permettere di generare grafici in modo semplice e veloce. • HTMLWidgets - http://www.htmlwidgets.org/, libreria in javascript per creare grafici con Rstudio (AVANZATA) • Leafletjs, è una moderna libreria Javascript per le mappe interattive mobile- friendly basate su OpenStreetMap.
  • 51. SENSING STATION Downloading the Code from Github • sudo apt-get install git • git clone https://github.com/adafruit/Adafruit_Python_DHT.git • cd Adafruit_Python_DHT Installare la libreria • sudo apt-get update • sudo apt-get install build-essential python-dev • sudo python setup.py install Testare la libreria • cd examples Per eseguire il codice d’esempio, digitare il seguente commando (il sensore è collegato in questo caso al GPIO#4): • sudo ./AdafruitDHT.py 22 4 Tutorial
  • 52. Thanks! ANY QUESTIONS? You can find me at: mirko.mancin@gmail.com
  • 53. CREDITS Special thanks to all the people who made and released these awesome resources for free: ▪ Busy Icons by Olly Holovchenko ▪ Presentation template by SlidesCarnival ▪ Photographs by Unsplash ▪ Source slide ▪ Introduzione alla Rpi (1) ▪ Introduzione alla Rpi (2) ▪ Guida RPi ▪ http://wasnlab.tlc.unipr.it This template is free to use under Creative Commons Attribution license. If you use the graphic assets (photos, icons and typographies) provided with this presentation you must keep the Credits slide.