Poche settimane fa (16 Maggio 2016) è stata annunciata la nuova revisione del Raspberry Pi Zero, la 1.3 che aggiunge al Raspberry più piccolo e meno costoso della famiglia anche un connettore per il modulo camera !

RaspberryPiZero

Già dalla prima versione desideravo prenderne uno, ma non c’ero mai riuscito visto che era perennemente “out of stock” in qualsiasi rivenditore.

Certo il prezzo di partenza del modello base (circa 5€) fa gola a molti…

Stavolta ho invece avuto la prontezza di ordinarlo subito dopo l’annuncio su ThePiHut visto che avevano ancora disponibilità (che è già rapidamente terminata, nel momento in cui scrivo.. ma immagino tornerà a breve).

Nello specifico mi sono preso il kit che comprende anche adattatori micro-usb, micro-hdmi, alcuni GPIO e una SD da 8GB. Ho preso inoltre un cavo piatto per il connettore alla Camera (visto che è leggermente più piccolo).

E’ arrivato tutto in pochi giorni e devo dire che toccandolo con mano è risultato davvero più piccolo di come me lo aspettassi. Davvero perfetto per alcuni progetti che non necessitano della potenza di un Raspberry Pi 3, ma per i quali invece le dimensioni ridotte sono fondamentali…

Come caso pratico ho provato subito a testarlo con l’ultima versione di SWPI, per vedere se riceveva subito i dati della stazione meteo con il ricevitore radio RTL-SDR acquistato di recente… e devo dire che in 10 minuti seguendo le istruzioni avevo già tutto configurato e funzionante…

IMG_2927

 

Ora devo farmi venire in mente qualche progettino minimale su cui impiegarlo seriamente…. ho già un paio di idee in mente! Tempo libero permettendo, ovviamente… 😉

Grazie a Seven che a ha scritto questo interessante post nel forum di vololiberomontecucco (la casa di SWPI, ndr), sono venuto a conoscenza di un’altra modalità per ricevere e decodificare i segnali radio dei sensori esterni della mia stazione meteo PCE-FWS 20 alias Fine Offset WH1080 con il Raspberry Pi.

Come ho scritto in un recente post, dopo aver giocato con provato diverse soluzioni, tra cui su tutti SWPI e RFM01, sono da mesi tornato alla soluzione USB con PYWWS. Devo dire che come stabilità è perfetto adesso, ma come comodità lascia a desiderare.

Purtroppo la soluzione di ricezione con RFM01 era difficoltosa e dopo averci perso tanto tempo dietro non ho intenzione di ritornarci…

E’ qui che interviene l’idea di Seven: utilizzare una chiavetta usb DVB-T (in pratica venduta per ricevere la TV Digitale Terrestre) basata sul tuner R820T / R820T2 per ricevere e decodificare il segnale radio dei sensori.

Non conoscevo questa chiavetta, ma dopo un po’ di ricerche ho capito essere il “coltellino svizzero” per questo genere di cose.
Costa circa 10€ e si trova facilmente (io l’ho presa su Ebay). E’ supportata da una miriade di software liberi e progetti opensource, tra cui HDSDR, con cui è possibile “giocare” con il sintonizzatore e visualizzare/ricevere tutti i segnali, comprese le radio AM/FM !

Il progetto però che serve a noi si chiama rtl_433, e la sua personalizzazione per WH1080 & Raspberry raspberry_rtl_wh1080. A quest’ultima link trovate una dettagliatissima spiegazione sull’argomento e tutte le istruzioni passo passo per installarlo su Raspberry/BananaPi.

10 minuti dopo l’inserimento della chiavetta USB sul Raspberry e seguendo passo passo la guida, ero riuscito a ricevere il mio primo segnale dai sensori:

pi@raspberrypi ~ $ rtl_433 -f 868300000 -F json -l 0
Registering protocol "Fine Offset WH1080 Weather Station"
Found 1 device(s):
  0:  Realtek, RTL2838UHIDIR, SN: 00000001

Using device 0: Generic RTL2832U OEM
Detached kernel driver
Found Rafael Micro R820T tuner
Exact sample rate is: 250000.000414 Hz
[R82XX] PLL not locked!
Sample rate set to 250000.
Bit detection level set to 0.
Tuner gain set to Auto.
Reading samples in async mode...
Tuned to 868300000 Hz.
{"time" : "2016-03-12 20:34:07", "model" : "Fine Offset WH1080 weather station", "msg_type" : 0, "id" : 46, "temperature_C" : 9.700000, "humidity" : 58, "pressure" : 984.581665, "direction_str" : "NNE", "direction_deg" : "23", "speed" : 3.672000, "gust" : 6.120000, "rain" : 831.900024, "int_temp" : 26.000000}

Veramente più semplice a farsi che a dirsi! 😉

Per ora l’output è un semplice oggetto JSON delle letture, ma integrarlo nei software esistenti non dovrebbe essere un’impresa ardua e lunga….

A breve nuovi aggiornamenti sull’argomento.

Avete la necessità di accendere un led o in generale leggere/impostare un qualsiasi pin del GPIO del Raspberry Pi via web? La soluzione più semplice e comoda è probabilmente utilizzare un server REST in Javascript con Node.js.

Esistono sicuramente anche altre valide alternative, io ho scelto questa perché negli ultimi mesi mi sono trovato diverse volte a lavorare con Node.Js e l’ho apprezzato veramente tanto per la sua semplicità e al contempo grossa potenza modulare, con un’infinità di pacchetti ed estensioni NPM.

Lo scopo di questa guida è quindi quello di accendere un led attaccato al gpio (con una resistenza e un mosfet, che non sono oggetto di questo post ma di cui potete trovare già tantissima documentazione) attraverso una semplice chiamata web http://indirizzo.ip/led/on.

Due led incastonati nel case del Raspberry, comandati da NodeJs

Due led incastonati nel case del Raspberry, comandati da NodeJs

Leggi tutto →

Uno degli articoli più letti di questo blog è sicuramente  Stazione meteo PCE-FWS 20 online grazie ad un Raspberry Pi. Da allora son passati 3 anni, tempo in cui ho avuto modo (benché poco tempo) di “giocare” ogni tanto con i software disponibili per Raspberry Pi per mettere online i dati della mia PCE-FWS 20 / WH1080, che sono presenti sul mio sito dedicato.

Da più di un anno non utilizzo più il sistema con Sint Wind Pi + ricevitore wireless RFM01 a causa di problemi vari di ricezione del segnale dovuti principalmente a interferenze e distanza dalla stazione. Sono invece tornato nei miei passi e utilizzo pywws con il Raspberry attaccato via USB alla consolle. Devo dire che dopo il setup iniziale non ho più avuto alcun problema e va come una meraviglia da tantissimi mesi senza alcun intervento da parte mia. Non si è mai verificato nemmeno un blocco della comunicazione USB, cosa che era avvenuta spesso nei miei primi test con pywws. Probabilmente erano dovuti ad una consolle un po’ difettosa.

Pywws è dunque consigliato e stabile, almeno dalla mia esperienza. Si trova una guida molto facile per l’installazione qui. (basta installare 3 pacchetti di dipendenze, non c’è nemmeno più bisogno di compilare le librerie USB come prima!). Mentre la completissima documentazione ufficiale di pywws contiene tutte le istruzioni per configurazione e setup, anche in italiano.

Se cercate alternative a pywws, vi consiglio di leggere queste ottime guide scritte dall’amico Simone di Meteo Bibbiena:

Dopo aver realizzato le webcam da esterno con Raspberry Pi di cui ho parlato nel precedente articolo, avevo la necessità di visualizzare in una pagina web le foto inviate nelle ultime 24.

Ho quindi realizzato una semplice gallery PHP che legge le foto inviate dal Raspberry nelle ultime 24 e ne crea delle miniature, ordinate per data inversa (le più recenti in alto). Cliccando sulla miniatura si apre un lightbox con la foto originale.
Lo script provvede inoltre a cancellare le miniature create se queste sono più vecchie di 24 ore.

E’ una gallery semplice e rudimentale, sicuramente migliorabile ed espandibile. Ma funziona ormai da un anno con due webcam installate in montagna, ed ha sempre fatto egregiamente il suo dovere! 😉

Eccola all’opera: Webcam Rifugio CampignaWebcam Snowpark Campigna

Potete trovare il codice della gallery qua su Sourceforge 

Qualche mese fa ho realizzato con il Raspberry Pi delle semplici webcam che inviano su server FTP delle immagini (scattate con il camera module), aggiungendo anche delle scritte e loghi in overlay.

A differenza della webcam che ho montato nella mia stazione meteo, questa non richiede software particolari.

La configurazione software è veramente semplice: un’ installazione standard di Raspbian su SD, con un script che si prende in carico tutto il lavoro (ovvero: scattare la foto, aggiungere le informazioni sopra, inviarla su FTP e scrivere dei log)

Lo script (che trovate in fondo) può essere salvato nella cartella home ed eseguito ad intervalli regolari tramite Cron, per esempio ogni 5 minuti con un’impostazione come questa:

*/5 * * * * /home/pi/TakeAndUpload.sh

Che ricordo va inserita digitando “crontab -e” nel terminale.
Gli unici requisiti per il suo funzionamento dello script sono i seguenti:

mkdir /home/pi/images
sudo apt-get install ftp imagemagick

La configurazione è presente in cima all script (nella sezione CONFIGURATION) ed è abbastanza autoesplicativa.

Per l’utilizzo in questione il Raspberry è stato inserito in una scatola stagna di alluminio (di quelle utilizzate per videosorveglianza) che è anche riscaldata tramite una resistenza posta internamente di fronte al vetro.
Questo accorgimento oltre a risolvere il problema della neve e ghiaccio, evita anche l’appannamento del vetro stesso.

La webcam è stata montata in una posizione molto a limite dal punto di vista ambientale, nei pressi del rifugio “La Capanna” sul Monte Falco nell’Appenino Tosco-Romagnolo,  a 1488 m ! Ed è in funzione senza alcun problema da quasi un anno a questo indirizzo: http://www.webcamcampigna.it/

Leggi tutto →

Premessa

Questo è il primo articolo di questo blog in cui lascio la parola ad un altro autore. Mi è sembrato giusto e doveroso dato che, sebbene l’idea di fondo sia stata partorita insieme, la completa realizzazione è stata fatta da Giulio (mio fratello, ndr), a cui devono andare tutti i complimenti e gli onori!

Alessandro

L’idea nasce dalla necessità di dover irrigare alcune piante, fiori e un orto a qualche chilometro da casa; tutti dotati di un impianto a goccia che permette di risparmiare molta acqua, ma che deve essere acceso per lunghi periodi di tempo, anche una notte intera. Quindi, dopo aver pensato alla parte idraulica, è giunto il momento di renderla anche smart*, grazie al fedele Raspberry Pi.

*ovvero come rendere complicato anche il semplice gesto di aprire un rubinetto.

Questo progetto ha avuto una lunga gestazione, non tanto per la complessità di fondo, quanto per la troppa carne al fuoco messa fin da subito. Ho deciso quindi di partire dall’essenziale: una centralina per l’irrigazione gestita dal Raspberry Pi che permetta la programmazione tramite smartphone, tablet o da remoto.

Leggi tutto →

Il 5 Gennaio 2014 con gli amici del BLAQ Visual Deparment abbiamo realizzato un’altra installazione utilizzando sempre il nostro pannello a LED autocostruito (BLEM), il projection mapping con video proiettore ed il controllo delle luci DMX del locale.

La descrizione schematica della struttura è la seguente. Di seguito un video e qualche dettaglio tecnico.

Leggi tutto →

Non contento di Natalino (controllo delle luci dell’albero con Arduino) ho deciso di rendere il progetto più “intelligente”, utilizzando questa volta il mio fido Raspberry Pi.
L’obiettivo era accendere un alberino a led con un tweet. Ed in poco tempo direi che ci sono riuscito 🙂

Volete provare ad accenderlo anche voi?


Di seguito le spiegazioni tecniche.
Leggi tutto →

Il Raspberry Pi è molto versatile ma a volte bisogna tener conto di alcune limitazioni. Una di queste è senza dubbio la poca corrente fornita dalle porte USB (circa 100 mA).

Tastiere e mouse di solito non hanno problemi, ma quando abbiamo delle periferiche che richiedono più corrente (per esempio una chiavetta WiFi o Bluetooth) allora è necessario utilizzare un HUB alimentato.

Gli HUB USB alimentati però non sono così economici. Con un po’ di manualità è possibile trasformare un vecchio hub in uno con alimentazione separata, oppure auto costruirsi una prolunga usb alimentata (powered usb extender) sfruttando i cavi che probabilmente abbiamo già a casa.

Obiettivo: alimentare il Raspberry e la periferica USB con un solo alimentatore USB, fornendo energia sufficiente ad entrambi.

Occorrente:

  • Cavo USB – microUSB (quello che comunemente utilizzate per alimentare il Raspberry)
  • Prolunga USB maschio-femmina (spesso fornite insieme alle chiavette usb o altre periferiche)
  • Alimentatore 5V (da almeno 1.2A, meglio qualcosa di più: dovrà alimentare sia il Raspberry che la periferica!)
  • Nastro isolante e saldatore a stagno

Il procedimento è semplice:

  • Tagliare a metà i due cavi
  • Nella prolunga maschio/femmina prendere il pezzo con l’USB femmina e collegare i fili rosso e nero al cavo USB maschio che andrà all’alimentatore. Gli altri due fili (bianco e verde) trasportano i dati e saranno collegati al connettore maschio che andrà all’uscita USB del Raspberry. Attenzione: non collegare anche rosso e nero all’ingresso del Raspberry, evitiamo che la corrente torni indietro dall’hub, potrebbe danneggiarlo!
  • Prendere lo spezzone col microUSB e collegare rosso e nero (gli altri non servono) agli altri che avete collegato al punto precedente.
  • Fissare tutti i collegamenti con nastro isolante e/o un punto di saldatura a stagno (consigliato).

Lo schema seguente spiega molto meglio il collegamento effettuato.

 

Schema di collegamento

Leggi tutto →