Comunicazione Wireless Low Cost con Arduino

31/07/2015




E' passato un pò di tempo dal mio ultimo post, ma purtroppo impegni di lavoro e altro mi hanno tenuto un pò lontano dai miei "esperimenti" con Arduino e Raspberry.

Finalmente nell'ultimo periodo ho trovato un pò di tempo a disposizione ed ho continuato la mia sperimentazione.

Se vi ricordate, qualche mese fa mi era arrivato, insieme allo Starter Kit Arduino, anche una coppia di moduli (ricevitore e trasmettitore) per la comunicazione Wireless low cost RF 433 Mhz.


Ho quindi fatto qualche prova di comunicazione tra due Arduino, utilizzando le librerie RadioHead.

Sia al ricevitore che al trasmettitore ho montato una piccola antenna fatta in casa...e per aumentare il raggio d'azione, il trasmettitore è stato alimentato a 12V. I due dispositivi riuscivano a comunicare anche tra due piani diversi della casa...

Ecco il ricevitore:



...e il trasmettitore:



Il test è stato un semplice invio di stringhe di testo tra i due arduino...il ricevitore era collegato al PC in modo tale da poter verificare, stampando su porta seriale le stringhe ricevute, l'effettivo funzionamento della comunicazione.

Esito positivo dei test...è arrivato il momento di mettere in campo tutte le esperienza fatte fin'ora e costruire qualcosa di utile...

Music Server su Raspberry PI

14/03/2015




Visto che ormai ho un computer con un consumo di corrente irrisorio che mi permette di tenerlo perennemente acceso e connesso alla rete locale, perchè non sfruttarlo anche per altre cose utili e meno utili???

Ho letto in giro su internet che esistono degli ottimi software per trasformare un pc/server linux in un media center...io ne cerco uno che possa funzionare in modalità "terminale" perchè per non occupare risorse inutilmente non voglio caricare in memoria l'ambiente grafico del sistema operativo...

Ho trovato un fantastico software che fa al caso mio...MPD - Music Player Daemon (http://www.musicpd.org/)


E' un software per linux che gira come Daemon (quindi come servizio) e permette di mandare in esecuzione musica di diversi formati, grazie al supporto di plugin e librerie. La cosa interessante è che può essere controllato via rete e può trasmettere anche la musica in streaming HTTP. Permette inoltre di gestire una libreria audio organizzata per cartelle con la possibilità di creare diverse playlist.

E' stato scritto e pensato per utilizzare pochissime risorse e quindi gira bene anche sul Raspberry PI senza appesantire il sistema.

Esistono numerose applicazioni client che ne permettono la completa gestione...applicazioni che girano anche su smartphone Android e iOS...

L'installazione è semplice in quanto per la distro Fedora Remix 21 (il sistema operativo che attualmente ho installato sul mio Raspberry PI) esiste direttamente il package da installare tramite YUM nel modo standard.

Una volta installato con il semplice comando yum install mpdè necessaria una piccola configurazione per poter essere utilizzato.

Il file di configurazione si trova in /etc/mpd.conf.

Le cose importanti da configurare sono l'impostazione del percorso dove si trovano i file audio che saranno aggiunti alla libreria, l'indirizzo di rete e la relativa porta su cui il servizio deve rimanere in ascolto per eventuali connessioni client ed infine le periferiche audio che si dovranno gestire...

Nel mio caso ho utilizzato un'unica periferica audio che attiva l'uscita jack del Raspberry PI; uscita che ho collegato con un cavetto RCA all'impianto Stereo.



Eventualmente si possono attivare altre periferiche di uscita e/o gli stream http.

Una volta effettuata la configurazione nel modo opportuno è sufficiente mandare in esecuzione il servizio. Da questo momento tutti i client connessi nella stessa rete del Raspberry saranno in grado di connettersi all'indirizzo ip e alla porta specificati nel file di configurazione.

Naturalmente è opportuno impostare l'esecuzione del servizio all'avvio del sistema, così nel caso raspberry si riavvii, il servizio parta in automatico senza nessuna necessità di intervento manuale. A tale scopo è possibile impostare un avvio silente che non manda in esecuzione direttamente il servizio MPD ma solo un demone che attiva il servizio all'arrivo della prima connessione...questo per non sprecare risorse inutili in caso di non utilizzo. Per fare ciò è sufficiente impostare all'avvio il servizio mpd.socket al posto di mpd.service.

Chiaramente, nel caso sia attivo il firewall sul Raspberry (ad esempio iptables), è necessario lasciare passare i pacchetti sulla porta di comunicazione del servizio.

Ad esempio, nel mio caso il raspberry ha indirizzo ip 192.168.1.3 e il servizio MPD è in ascolto sulla porta 6600 (quella di default). Quindi sul firewall iptables ho configurato la porta 6600 in modo tale che lasci passare i pacchetti in ingresso.

Ultima cosa che rimane da fare è quella di utilizzare un client da remoto...quindi installo sia sul mio smartphone che sul tablet (entrambi Android) il software MPDroid, che si trova facilmente su Google Play ed è totalmente gratuito.


Qualche screen...

Smartphone



Tablet


Alternativa per sistemi operativi iOS è MPoD, su Apple Store, anche'esso gratuito.



Non rimane nient'altro che accendere lo stereo e alzare il volume :)

Raspberry PI 2 - E' arrivato...

06/03/2015




Dopo qualche giorno di attesa è finalmente arrivato il corriere con la sorpresa tanto aspettata...il nuovo Raspberry PI 2...

Eccolo in tutto il suo splendore...



Le caratteristiche tecniche sono di tutto rispetto e questo aggeggino è assimilabile del tutto ad un vero e proprio PC...con i vantaggi di avere un consumo bassissimo e un'occupazione di spazio del tutto ridotta...

Ecco le caratteristiche:

- Processore quad-core ARM Cortex-A7 900MHz
- 1GB RAM
- 4 porte USB
- 40 pin GPIO
- Porta HDMI
- Porta Ethernet
- jack 3.5mm per audio / video composito
- Lettore Micro SD

Non ha memoria interna ed è quindi necessario utilizzare una scheda micro SD come "Hard Disk"...io ho optato per una Sandisk da 16GB, che dovrebbe essere più che sufficiente per il sistema operativo + varie ed eventuali...

Come sistema operativo, andrò ad installare Fedora 21 Remix, versione ottimizzata per Raspberry della famosa distro linux Fedora...

Bando alle ciance, iniziamo a far lavorare il nuovo giocattolino...