La Raspberry è dotata di quindici pin GPIO con ci inviare leggere segnali digitali controllabili con webiopi raspberry
Webiopi è un framework open-source per controllare la componente GPIO della Raspberry Pi.
Installazione del webiopi raspberry
La documentazione del progetto è ben fatta e ti guida passo passo nell’installazione, io l’ho seguita senza incontrare difficoltà.
Ecco i passi che ho eseguito sulla mia raspberry:
pre-requisiti per l’installazione sono i due pacchetti gcc e python, inizia installando il pacchetto gcc:
come da figura esegui:
#> apt-get install gcc-4.7
poi installa python 3.2:
esegui il comando:
#> apt-get install python3.2
sei pronto per scaricare ed installare webiopi raspberry, prima di iniziare devi scaricare dal sito ufficiale l’ultima versione ( in questo momento la 0.6 ), esegui il comando:
#> wget http://webiopi.googlecode.com/files/WebIOPi-0.6.0.tar.gz
se non riesci a scaricare il software potresti non riuscire a connetterti a internet dalla tua raspberry, controlla la configurazione di rete e riprova, la schermata che ti verrà proposta è la seguente:
a questo punto la sorgente del webiopi raspberry è quasi pronta per essere installata, procedi estraendo l’archivio .tgz con la sequenza di comandi:
#> gunzip WebIOPi-0.6.0.tar.gz #> tar xf WebIOPi-0.6.0.tar
vedrai una schermata simile alla seguente:
puoi anche utilizzare un solo comando come suggerito dal wiki ufficiale:
#> tar xvzf WebIOPi-0.6.0.tar.gz
è indifferente il metodo che decidi di utilizzare l’importante è che la sorgente sia estratta e che ti ritrovi con la dir WebIOPi-0.6.0 contenente i file sorgenti e il setup.sh di installazione. Lancia il comando:
#> cd WebIOPi-0.6.0 #> sudo ./setup.sh
ed otterrai una schermata simile alla seguente:
in cui ho eliminato le numerose linee intermedie per evitarti un’immagine illegibile.
La parte interessante è quella finale in cui trovi i comandi per far partire WebIOPi 0.6 e per far in modo che webiopi raspberry parta alla partenza della raspberry.
Configurazione di webiopi raspberry
La parte di installazione è conclusa e puoi procedere all’avvio ( vedi paragrafo successivo ) se vuoi provare subito.
Se invece vuoi personalizzare la tua installazione i file di configurazione sono sotto /etc/webiopi/ e sono:
- config
- passwd
La fantasia non è acqua e troverai la configurazione del webiopi raspberry nel primo e la password di accesso all’interfaccia nel secondo, di default l’accesso avviene con le credenziali:
- username: webiopi
- password: raspberry
[HTTP] enabled = true port = 8000 passwd-file = /etc/webiopi/passwd doc-root = /usr/share/webiopi/htdocs welcome-file = index.html
Avvia webiopi raspberry
L’avvio del server è semplicissimo, esegui come root il seguente comando:
#> /etc/init.d/webiopi start
la schermata che ti si presenta è simile alla seguente:
Collegati da remoto a webiopi raspberry
Puoi finalmente aprire il tuo browser preferito e inserire come Url http://[l’IP della raspberry]:8000 in cui l’indirizzo Ip della raspberry è lo stesso a cui ti colleghi via ssh:
la schermata che ti si presenta è il menu di ingresso del sw webiopi raspberry, clicca sul link GPIO Header la schermata che si presenta è la seguente:
ti mostra il connettore GPIO di webiopi raspberry e la configurazione iniziale di ciascun pin, nota che i pin di tipo GPIO sono tutti configurati in modalità IN, quindi clicca sul quadrato grigio “IN” corrispondente per cambiare la modalità di connessione del pin da IN ad OUT:
io ho cambiato la modalità solo dei primi tre GPIO in alto a sinistra:
- GPIO 0
- GPIO 1
- GPIO 4
ma puoi farlo di tutti i GPIO che presentano il quadratino grigio con la scritta IN o OUT.
Se fai click sul pin GPIO corrispondente al numero che desideri accendere o spegnere vedrai una situazione simile alla seguente:
in cui i led collegati si acendono:
Il risultato è soddisfacente? a mio avviso si, e funziona anche da smartphone 🙂
Buona progettazione !!!
119 commenti
Vai al modulo dei commenti
Ciao, funziona tutto perfettamente. Ottima guida ed ottimo il sw. Ha delle potenzialità immense. Vorrei però mostrare sulla mia custom html anche i valori di variabili che ho calcolato in python. Come posso fare? Possibile che non esista nessun thread per questo apparentemente banale problema? Son giorni che ci provo senza risultato. Aiutoooooooo 🙂
Autore
Ciao Gianluca,
che bella idea, io non sono un programmatore python.
Se tu hai già realizzato qualcosa posso pubblicarlo a tuo nome e realizzare il primo thread su questo argomento.
Mauro
Ciao Mauro
Bravissimo, non conoscevo ancora questo modo di vedere il gpio di rasp.
E quando invece si tratta di leggere dai pin che imposti come entrate come funziona la cosa?
Autore
Ciao Agostino,
le GPIO sono IN/OUT digitali, non ho ancora provato ma immagino che funzioni come un interruttore per Arduino, l’unico dubbio è che lavori a 3,3v e non a 5v.
Se vuoi sperimentare il funzionamento mi fa piacere poi condividiamo l’esperienza sul Blog.
Mauro
Ciao, dovrei leggere da sensori digitale dei valori, posso farlo con la webiopi?
Inoltre come faccio a far leggere tali valori, per esempio in uno script?
Grazie!!
Autore
Ciao Simone,
puoi farlo, almeno stando alla documentazione del software che ti invito a leggere e tenere come riferimento per il tuo progetto.
Mauro
Ciao! Ottima guida!
Io però ho un piccolo problema se provo a collegarmi a webiopi quando il raspberry è connesso a internet tramite tethering USB da android.. Come mai? Bisogna impostare qualcosa sul raspy?
Autore
Ciao Luca,
non ho compreso come ti stai collegando al webiopi e sopratutto in che fase del tutorial sei.
Stai installando il pacchetto?
Mauro
Allora:
Ho installato e testato webiopi con il raspy connesso alla rete di casa via cavo ethernet.. Poi ho collegato il raspy ad internet grazie alla condivisione dati da android (USB tethering) ma ora non riesco più a collegarmi al server webiopi per gestire la GPIO.. La mia domanda è quindi: è possibile collegarsi al server quando il raspy è connesso via usb tethering?
Autore
Ciao Luca,
penso non sia possibile dallo stesso telefono.
Per connetterti a Raspberry via rete devi conoscere l’indirizzo Ip da inserire nel browser e la porta 8000 su cui risponde il webiopi deve essere disponibile su quell’Ip.
Prima prova a verificare che ip é assegnato al tuo Android, poi verifica se espone su quell’Ip la porta 8000 a questo punto prova a connetterti.
Mauro
Sto cercando di accedere alla configurazione per cambiare id e passwd.
Ma all’interno di /etc non c’è la directory webiopi.
Ho letto qualcosa qui ” https://code.google.com/p/webiopi/wiki/PASSWORD ”
dove si parla di generare un file, ma sinceramente non ho capito molto.
Mi sai dire qualcosa ? Grazie
Gianfranco
Autore
Ciao Gianfranco,
l’installazione é riuscita correttamente? Senza errori?
Da come scrivi sembra c’è ai fallito qualche passaggio ed ecco il motivo per cui non trovi tutti i file e i occorrono.
Mauro
Grazie.
In effetti avevo la versione 0.5.1.
Installando la 0.6.0 adesso trovo i file di configurazione.
Ancora grazie.
Gianfranco
Autore
Ottimo Gianfranco sono contento.
Mauro
Ciao Mauro, non so se ti ricordi di me, insieme lavorammo a quel discorso del passaggio a livello in modellino con Arduino. Se ricordi ti parlai già delle potenzialità di Raspberry, e mi fa piacere che anche tu stai facendo sperimentazioni. Siccome ho ripreso in mano dei progetti, sono capitato su questo tuo tutorial e approfitto per chiederti se hai affrontato la seguente problematica:
qualora volessi controllare delle luci di una abitazione, immaginando un lato giorno e un lato notte, come la vedresti un’architettura fatta da un RPi con un webserver (e collegato via LAN ad un router wifi) al quale sono collegati due Arduino (uno posto in lato giorno e uno posto in lato notte, appunto) per il controllo delle luci delle stanze? Se la vedessi bene, hai già analizzato come fare le connessioni? Questo è importante in quanto si potrebbero monitorare proprio tramite il webiopi.
Intanto ti ringrazio!
a presto,
Gianfranco
Autore
Ciao Gianfranco,
si mi ricordo del tuo meraviglioso modello di passaggio a livello.
L’argomento di una casa domotica ricorre spesso nei progetti che ho in mente e qualcuno comprendeva la soluzione che hai prospettato.
Se dovessi utilizzare la Raspberry Pi per un piccolo impianto domotico forse mi rivolgerei alle connessioni xbee per il controllo remoto dei sensori ambiente e degli attuatori ( relè ) per accendere e spegnere luci, lasciando comunque ai moduli Arduino collocati in casa la possibilità di mantenere una propria intelligenza di controllo tra interruttore classico e luce collegata.
L’argomento è tuttavia complesso per essere affrontato in un commento, magari proverò a scrivere qualche articolo in merito oppure, se vuoi, puoi scrivere un articolo sulla soluzione che hai in mente e la condividiamo come articolo sul Blob.
Mauro
Ciao Mauro, complimenti per l’ottima guida. Ho un problema con l’installazione e non riesco a capirne il motivo..
Sono arrivato al punto dove dovrei lanciare il comando
#> cd WebIOPi-0.6.0
#> sudo ./setup.sh
per arrivare nella cartella di webiopi ma ogni volta che lo lancio mi da errore dicendo “file o directory non esistente”.
Ho cercato qualsiasi informazione disponibile su internet ma senza trovare nulla. Ho provato sia con utente pi sia con utente root pensando che fosse una questione di permessi ma nulla.
Mi sapresti aiutare?
Fabrizio
Autore
Ciao Fabrizio,
se lanci il comando “ls -la” vedi la dir WebIOPi-0.6.0 magari si chiamo solo in modo differente.
Mauro
Ciao Mauro, alla fine ho risolto installando il tutto da pi store, ma mi trovo con lo stesso medesimo problema ogni volta che scarico qualsiasi file con wget. Vorrei capirne il motivo dato che l’utente pi è proprietario della cartella pi ma non riesce ad accedere.
Grazie del tuo aiuto ma mi sto avvicinando da poco al mondo debian, o linux in genere, e non mi risulta facile trovare info su internet riguardo a dei problemi specifici.
Fabrizio
Autore
Ciao Fabrizio,
se vuoi avvicinarti all’open source software ed hardware ti consiglio di non cercare solo le info specifiche ai tuoi problemi ma di iniziare a leggere qualche manuale di Linux per capire cosa siano permessi, utenze, id, filesystem ecc.. avrai sicuramente un’idea più completa del sistema e di come operare.
Non trovi nulla sul web in quanto le tue difficoltà non sono legate a problemi del sw o del sistema linux ma a mancanza di conoscenze basilari che si acquisiscono con un manuale base linux.
Vorrei aiutarti ma i motivi per cui ottieni gli errori di cui mi parli potrebbero essere dovuto a molte varianti: permessi, utente, gruppo.
Mauro
Salve, spero di non andare fuori tema , volevo sapere se fosse possibile con questo raspberry far in modo di lanciare comandi da shell linux alla pressione di un tasto esterno, praticamente vorrei laciare una stringa dove mi carica un demone openvpn alla pressione di un tasto e me lo killa o alla ripressione o premendone un’altro
grazie mille
ottimo bolg!
Autore
Ciao Alessandro,
penso sia possibile, dovrai scriverti un software che controlli una uscita GPIO e che al variare dello stato del pin lanci il comando che desideri.
Mauro
Complimenti Mauro,
ottimo server.
Ho installato e testato il tutto ma mi è sorto un problema quando ho copiato la cartella htdocs di webiopi nella cartella /var/www.
Praticamente non funziona più.
La prima pagina viene caricata, ma i link non vengono collegati. Ho dovuto togliere la “/” all’inizio del href per farlo puntare al link giusto, ma la pagina resta bianca.
Perchè?
Grazie.
Autore
Ciao Winsum,
hai un problema di path nei link, se sposti la cartella devi riscrivere i link in modo che puntino alla nuova cartella.
Mauro
Ottimo articolo e belle spiegazioni; ci sarà la possibilità di interfacciare un piccolo schermo touchscreen ?
Autore
Ciao Michele,
mi sembra di aver visto nel web qualche articolo dedicato ai monitor touch screen con la raspberry pi.
Mauro
ciao Mauro , è possibile modificare la pagina della gestione della GPIO ? mi spiego meglio : vorrei modificare la grafica della pagina e gestirla a modo mio , creando in html/php un po di grafica e a login .. cioè vorrei faro diventare un po una pagina diversa.. più creativa ecc.. sai come fare? gazie =)
Autore
Ciao Emanuele,
puoi fare tutte le modifiche che desideri conoscendo html, se vuoi aggiungere parti interattive come un login o altre funzioni ti consiglio il Php.
Mauro
grazie mille , ma vorrei sapere come prelevare lo script pr le porte GPIO (premetto che sto studiano html e php ).grazie
Autore
Ciao Emanuele,
tutte le parti del progetto puoi scaricarle dal link che trovi nell’articolo, all’interno del codice trovi tutti i file che ti servono, non sarà solo uno.
Mauro
Vorrei leggere da remoto e memorizzare in un data base, il codice ottenuto da un lettore di badge (uscita rs232) associato al quantitativo di pezzi depositati ottenuti contando l’apertura di uno sportello.
Pensi che Webiopi potrebbe essere una soluzione?
Puoi darmi una mano per l’interfacciamenti Rs232 ed il contapezzi?
grazie
daniela
Autore
Ciao Daniela,
non penso la Webiopi possa esserti di aiuto.
Io posso studiare con te il progetto su commissione ma dovresti inviarmi quanti più dettagli possiedi mediante la casella di posta info del blog ed io potrò valutare un preventivo ed un ipotesi di soluzione.
Su contatti trovo solo FB e twitter, oui darmi un’email?
grazie
Autore
Ciao Daniela,
nelle prime righe trova la casella info del blog in notazione antispam.
Se non dovesse trovarla provvederò ad inviarle una email vuota come apripista.
Ciao Mauro,
Ottima guida ed esauriente,volevo chiederti se Webiopi può essere adatto anche all’accensione di luci e una ventola utilizzando opportuni relay a 5v.
Inoltre vorrei sapere se una volta collegato relay ai carichi e alla ventola è sufficiente installare come da tua guida o c’è bisogno di script bash o altro.
Ciao e grazie
Autore
Ciao Fabrizio, webiopi é un progetto che trovi online con tutta la sua documentazione.
A memoria tutto il codice del progetto é sufficiente ad ottenere ciò che vuoi realizzare.
Ti consiglio di usare una scheda con optoisolatori tra Raspberry ed i relè.
Ciao Mauro,
A me basta mettere due relè forse uno..per accendere le luci del giardino. quindi in questo uso non ho bisogno di creare script ma basta Che installo webiopi?
Pensi ver ci sa problemi tenendo il raspberry attivo 24 ore su 24 sempre con i relè e la sua webcam di sorveglianza?
Se metto tutto all’interno di una custodia meglio ventilare? La metto sotto un portico però qua le temperature arrivano anche a 10 gradi sotto zero d’inferno e oltre 30 in estate.
Saluti
Autore
Ciao Fabrizio, Raspberry é progettata per funzionare a lungo senza ventilazione, io tuttavia ho acquistato un kit di dissipazione passiva, solo alette di raffreddamento, che puoi trovare come articolo.
Sui parametri di resistenza della scheda ti invito a leggere sul sito del produttore che rilascia le specifiche della scheda stessa.
Ciao Mauro,
Sì anche io ho acquistato i dissipatori , il discorso ventola sarebbe forse per il fatto di mettere il raspberry dentro a custodia e quindi per favorire un po di aria…..
Tornando al fatto della applicazione webiopi mi pare di capire che una volta collegato il carico ad i rele scarico python e webiopi e dovrebbe comandare i rele ma non mi è chiaro se li gestisce da solo o se devo fare dei script per gestire i comandi IN OUT della gpio per potere accendere o spegnere le luci.
Autore
Ciao Fabrizio,
il progetto, se ricordo bene, è in grado da solo di portare i pin del GPIO a livello HIGH o LOW senza ulteriori script.
Ti consiglio cmq di leggere la documentazione del progetto che ricordo essere ben fatta e dettagliata.
Ciao …….
so che esistono anche le schede rele’ con gia’ equipaggiate di optoisolatori, secondo te’ per non prendere la 5v direttamente dal raspberry potrebbe essere una idea alimentare la scheda tramite alimentatore esterno a 5v? eventualmente interponendo tra raspi e scheda rele’ un uln2803 su basetta
Autore
Ciao Fabrizio,
sicuramente esistono schede di ogni tipo e cercando bene troverai quelle che fanno al caso tuo.
Se vuoi alimentare una scheda con alimentazione separata puoi farlo, devi ricordarti che il terminale comune ( Gnd ) deve essere collegato tra le due alimentazioni perché tutto funzioni.
Ciao, ho scritto(meglio scopiazzato in giro) questo codice per attivare i gpio da pagina web. A me serve che si attivi per 2 secondi invece mi da un impulso velocissimo e non riesco a temporizzare… mi daresti una mano?? sotto il codice
Controllo Domotica By Dany
[ codice rimosso in automatico ]
Autore
Ciao Dabiele,
come hai letto in fondo ad ogni articolo non è possibile incollare codice nei commenti sul blog.
In merito al tuo problema devi inserire un ritardo o un ciclo a vuoto per temporizzare l’accensione del led.
Non ricordo se esiste qualche comando della libreria che stai usando per introdurre un ritardo.
Il web non è concepito per introdurre ritardi, anzi tende ad essere molto veloce, puoi provare con javascript.
All’avvio il raspberry mi chiede login e password e quindi non si connette come posso risolvere il problema ?
grazie massimo
Autore
Ciao Massimo,
hai provato username e password di default suggerite sul sito del produttore delle webiopi ?
Buongiorno Mauro,
grazie mille per l’articolo, utilissimo per l’installazione e le prime prove di funzionamento con WebIOPi.
Sto cercando ora di far funzionare un MCP23S17 ed un MCP3008 collegati al Raspberry via SPI, ma ho un problema: solo il device collegato sul CE1 dell’SPI funziona, mentre quello sul CE0 no: se collego il 23S17 sul CE1, posso tranquillamente cambiare lo stato di ogni pin da input ad output, vedere i cambiamenti di stato degli input e settare gli output correttamente, mentre se provo a cambiare i livelli in input del 3008, non vedo movimenti nella rispettiva sezione del devices monitor. Viceversa, se collego il 23S17 sul CE0, lo stato input/output di ogni pin cambia continuamente, così come il loro livello on/off.
Ho pochissime conoscenze di elettronica (ma fortunatamente non costruisco io i miei circuiti 🙂 ) ma questo mi fa pensare che più che un errore di progettazione del circuito, si tratti di un problema software.
Per quanto riguarda WebIOPi, ho solamente aggiunto le due righe relative ai devices al file di configurazione:
[DEVICES]
mcp1 = MCP23S17 chip:1 slave:0x27
adc0 = MCP3008 chip:0
In questo caso, il 3008 funziona correttamente, mentre il 23S17 mostra il comportamento descritto sopra.
Sapresti dirmi dove sbaglio?
Autore
Ciao Mirko,
tutto molto interessante io non mi sono mai spinto fino a questo punto con la Raspberry Pi.
Mi verrebbe da suggerirti di provare ad invertire i chip e verificare che si tratti solo di un problema sw ma potrei dirti una castroneria non avendo mai provato queste interfacce e device con la raspberry pi.
Scusa, in effetti dal messaggio non si capiva bene, ma è quello che ho fatto: Se inverto i due integrati (sposto quello su CE1 al CE0 e viceversa, cambiando il parametro chip di entrambi nel file di configurazione), quello che prima era fermo si mette a funzionare e viceversa.
Ti ringrazio comunque per la disponibilità e per avermi fatto conoscere WebIOPi, vedrò di venirne fuori 🙂
Autore
Ciao Mirko, quando ci riesci, se ti va, mi piacerebbe condividere sul blog la soluzione che avrai applicato.
Ciao Mauro, ancora complimenti per il tuo sito e per tutto il tempo che dedichi.
Ho testato questa tuo progetto per muovere le GPIO sul mio raspberry B+, ma ovviamente vedo solo 26 pin invece che 40.
Esiste una soluzione ?
Ti ringrazio
Giovanni
Autore
Ciao Giovanni, il codice non l’ho scritto io ma un appassionato RaspBerry, prova a controllare sul suo sito se ha scritto una versione per 40 pin, magari la sta ultimando e a breve la pubblicherà. Ultima strada, essendo open source, puoi eseguire tu la modifica al codice e pubblicarla a vantaggio di chi ha una Raspberry B+
Quindi per usare i 40 pin devo aspettare chissà quanto?
Autore
Ciao Michele,
non comprendo la tua domanda, siamo nel mondo del software libero e puoi sviluppare da solo quello che ti serve partendo da ciò che qualcun altro ha condiviso.
ciao Mauro,
vorrei sapere se fosse possibile e come gestire i gpio per comandare da scheda relè un punto luce collegandomi tramite webiopi da un altra rete grazie
Autore
Ciao Michele,
a memoria mi sembra fosse possibile ed in modo alquanto semplice, hai consultato la documentazione ufficiale del software?
Ho un RPI B+, su di esso i contatti GPIO sono aumentati.
Questo Webiopi non tiene conto degli altri GPIO?
Autore
Ciao Luigi,
prova a verificare sul sito dell’autore del sw se ha rilasciato aggiornamenti per la versione RPI B+
Ciao Mauro, volevo segnalarti che dopo il comando ” apt-get install python3.2 ” il raspberry andrebbe riavviato, altrimenti l’installazione dei pacchetti successivi porta ad errori.
Volevo inoltre dirti che, dopo aver seguito la tua guida, mi imbatto in questo errore:
Preconfiguring packages …
dpkg: unrecoverable fatal error, aborting:
files list file for package ‘xfonts-base’ is missing final newline
E: Sub-process /usr/bin/dpkg returned an error code (2)
Cannot install for Python 3.2.3 : missing development headers
ERROR: WebIOPi cannot be installed – please check errors above
Autore
Ciao Vincenzo,
hai provato a verificare, sul sito dell’autore del Webiopi, se ci sono stati aggiornamenti?
Ciao Mauro, ho installato precisamente come la tua guida e sembra essere tutto apposto, nessun messaggio di errore.
Però quando scrivo l’indirizzo del raspberry (che sarebbe 192.168.1.150:8000) non appare niente, appare “pagina web non disponibile”, la pagina predefinita di chrome per intenderci.
Non capisco dov’è l’errore, l’ip è sicuramente quello, anche perché ho installato tutto tramite SSH, impossibile aver sbagliato indirizzo.
Cosa può essere? Sono nel pallone…
Autore
Ciao Gianmarco,
verifica che sulla Raspberry Pi la porta 80 sia attiva e in LISTEN
Poi verifica che non ci sia attivo il firewall che blocchi la porta 80 in ingresso.
Grazie mille per la risposta rapida, gentilissimo.
La porta 80 l’avevo già aperta in entrambi i sensi, idem la 8000 per sicurezza.
Firewall non ne ho su pc, non credo ci sia sul raspy…o sì?
Ho installato l’ultima versione (0.7.1) di webiopi ma non mi è cambiato niente, ci sto diventando scemo…non capisco proprio il problema!
Autore
Ciao Gianmarco,
hai verificato che sulla Raspberry Pi non sia attivo il firewall e blocchi gli accessi alle porte del Webiopi ?
Verifica anche che sul server ci siano le porte in colto sul server ( raspberry pi ) a cui vuoi collegarti
Risolto!
Avevo un port redirect sull’ip del raspy che evidentemente gli dava fastidio…tolto quello, dopo un riavvio ha funzionato, menomale.
Se può interessarti, questo è il link che ho usato per scaricare ed installare l’ultima versione di webiopi:
wget http://downloads.sourceforge.net/project/webiopi/WebIOPi-0.7.1.tar.gz
Ti ringrazio ancora per l’assistenza 🙂
Autore
Ottimo Gianmarco.
Ciao, sapete se esiste un programma per gestire le GPIO con un controller (joystick).
Grazie
Autore
Ciao Emanuele,
dovresti specificare meglio ciò che desideri realizzare.
Mauro
Dovrei controllare dei motorini elettrici collegati a dei relè che a loro volta li volevo collegare alla GPIO.
Per controllarli avevo intenzione di usare un controller usb.
Sto cercando di realizzare un ROV per immersioni subacquee.
Grazie
Emanuele
Autore
Ciao Emanuele,
perché non usi direttamente i pin GPIO di Raspberry?
Ti complichi la vita con la USB oltre che il costo del progetto.
Scusa non mi è chiaro.
Io volevo collegare direttamente la scheda relè ai pin del GPIO ma per controllare i pin volevo usare il joystick, un po’ come se fosse una macchinina telecomandata: avanti, indietro, dx, sx, su e giù.
Autore
Ciao Emanuele,
adesso mi è più chiara il tuo obiettivo, scrivendo controller usb e motori ho dedotto, erroneamente, che tu il controller si riferisse ai motori e non ad un joystick.
Chiarito l’equivoco ti chiedo .. qual’è la domanda ? Se si può fare ?
Più che se si può fare, che presumo proprio di sì, è se conoscete qualche programma adatto allo scopo o se Webiopi è modificabile. Ho chiesto qui perchè ho visto che si parlava di GPIO e magari siete sicuramente più preparati di me…
Grazie
E.
Autore
Ciao Emanuele,
si puoi modificare webiopi in quanto open-source.
ciao sono alle prime armi, vorrei installare una scheda relè, ho visto che in commercio ce ne sono di vario genere a me basta una che abbia una o due uscite, su ebay si trovano ad un paio di euro, mi sapresti consigliare un modello compatibile per il rasp che vada al volo, grazie.
Autore
Ciao Enrico,
purtroppo no, non ho mai provato schede relay con Raspberry ma immagino che qualunque scheda attivabile dai 3.3v del GPIO vada bene.
Ciao Mauro,
sono alle prime armi e vorrei farti una domanda: ho il raspi b con webiopi perfettamente funzionante.
Vorrei però modificare qualche scritta e colore della pagina html del webiopi. Ho modificato la pagina index utilizzando ftp per portarmela sul pc e modificata nel browser. Ma quando la riporto nel raspi (sempre tramite ftp) la pagina iniziale è quella di default e le mie modifiche vengono ignorate. Hai un suggerimento per me?
grazie
Massimo
Autore
Ciao Massimo,
hai controllato che la pagina richiamata da webiopi sia quella che tu stai modificando?
Controlla sulla documentazione del prodotto dovrebbe essere riportata.
Autore
Ciao Massimo,
hai verificato che la pagina richiamata dal WebiOpi sia esattamente quella che hai modificato?
Dovresti verificare nella documentazione del sw quali pagine richiama e come modificarle.
Ciao Mauro, volevo chiederti come hai collegato i Led
Autore
Ciao Nico,
l’anodo dei led ai pin 3,5,7 come si vede e legge in tutto l’articolo 🙂
Il Gnd a Gnd.
Autore
Ciao Nico,
l’anodo dei led ai pin 3,5,7 di Raspberri Pi, cme vedi nelle figure e nel testo dell’articolo.
Il catodo al Gnd.
Mauro
Ti volevo inoltre chiedere se potevi contattarmi via Mail che vorrei porti alcune domande
Spero che lo farai, perche reputo questa guida molto interessante 🙂
Autore
Ciao Nico,
non incollare email nei commenti, rischi che ti bombardino di spam.
Qualsiasi info desideri posso dartela solo attraverso i commenti e dopo che avrai letto e compreso i miei articoli.
Bellissimo lavoro ..grazie
Sei a conoscenza di una giuda per modificare le label del webiopi ? Per poter dare dei nomi aderenti alla fuzione svolta magari potendo configurare i vari pin in out / in modo stabile alla partenza del webiopi ?
Grazie ancora … Saluti Willy
Autore
Ciao Willy,
a memoria ricordo solo la wiki del progetto che mi sembra sia davvero ben fatta.
Grazie per la risposta … dove posso trovarla ??
Saluti Willy
Autore
Ciao Willy,
penso tu possa cercarla sul web, dovrebbe essere lineata nella pagina del progetto stesso.
Salve sign. Mauro
Volevo farle delle domande, riguardo il mio progetto di rendere casa mia completamente domotizata e gestita da remoto.
premetto che sono alle prime armi per quanto riguarda la programmazione , ho un raspberry pi B.
La prima domanda e’ posso creare o modificare la pagina webiopi per far in modo che compaglia come home page ad asempio la piantina di casa mia (come ad esempio la pagina iniziale di freedomotic ) .
la seconda domanda e riferita alla gestione dei miei 40 gpio ad esempio inserire un simbolo(lampada) , nel momento che viene cliccata mi fornisce un livello HIGH o LOW , o leggere un segnale ec..
la ringrazio
Autore
Ciao Antonio,
il progetto Webiopi è molto complesso ma ben documentato, sul loro sito trovi una wiki in cui sono descritti comandi, metodi e librerie da modificare.
In ogni caso, se sei alle prime armi, dovrai dotarti di tanta pasienza e voglia di studiare per realizzare un progetto come quello che hai in mente devi conoscere almeno 3 o 4 linguaggi di programmazione e l’elettronica approfondita.
Ciao Mauro, sono Michele mi servirebbe un aiutino ho installato il tutto ma quando vado sul browser per accedere non mi apre la pagina, ip del raspberry è giusto, io ho un raspberry pi 2 model b, grazie per l’aiuto
Autore
Ciao Michele,
come lo descrivi sembra un problema di accesso alla pagina web, sei certo che l’installazione sia andata a buon fine e che tutti i servizi siano partiti in modo corretto sulla RPi
credo di si dato che da terminale mi dice webiopi in start, ora provo a reinstallare il tutto, grazie per la disponibilità
ciao Mauro , dopo tutta la procedura ecco il risultato
root@raspberrypi:/home/pi/WebIOPi-0.6.0# /etc/init.d/webiopi start
[….] Starting webiopi (via systemctl): webiopi.serviceFailed to start webiopi.service: Unit webiopi.service failed to load: No such file or directory.
failed!
root@raspberrypi:/home/pi/WebIOPi-0.6.0#
leggendo un po’ nei vari forum dicono che il raspberry pi 2 model B non è compatibile con weiopi
non mi entra neanche nel file di configurazione
Ciao Mauro
Ho trovato la tua guida alquanto esplicativa ma non so per quale motivo ma quando vado ad effettuare l’operazione gzip del file scaricao mi restituisce qst errore:
tar xvzf WebIOPi-0.6.0.tar.gz
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
Ho provato a leggere qualche thread online ma ne viene fuori ben poco.
Se,bra come se il file è corrotto
Autore
Ciao Alessio,
il messaggio indica che il file non viene riconosciuto dal gzip potresti averlo solo scaricato corrotto, verifica se esiste un MD5sum del file e confrontalo con quello del tuo file.
In alternativa scarica nuovamente il file.
ciao mauro, ho seguito passo passo la tua guida, ma ho un problema, quando vado a collegarmi al mio IP:8000 non mi trova la pagina principale del webiopi, mi sapresti dire perchè?
Autore
Ciao Daniel,
mi servono maggiori dettagli per aiutarti:
– la porta 8000 è in ascolto sul server?
– il servizio è attivo?
– l’IP lo raggiungi ?
– hai qualche firewall attivo?
Se non sai come reperire queste informazioni puoi cercarle in un manuale debian o linux sul web.
Ciao Mauro, ho collegato il mio Raspberry PI 2 + scheda relè ai pulsanti di apertura/chiusura e blocco di un cancello scorrevole e ho creato una pagina webiopi nuova con 2 bei pulsantoni APRE/CHIUDE e BLOCCA 🙂
Tutto funziona alla perfezione a parte questo piccolo inconveniente… Tramite smartphone (iPhone) apro la mia pagina con i comandi ma tutte le volte mi viene richiesta username e password. Non so perchè safari (neanche Chrome o altri browser ) le memorizza.
Certo, la sicurezza va a farsi benedire perchè poi chiunque può aprirmi il cancello ma giusto per farmi grande una volta con parenti e amici e far vedere che apro il cancello con un tap 😀 che Tu sappia c’è un modo per disattivare il login ?
Grazie.
Autore
Ciao Claudio,
ho provato Webiopi molto tempo fa, hai cercato nella documentazione del progetto? E’ ben fatta e spiega tante cose interessanti.
Ciao Mauro! Grazie per questo interessantissimo articolo. Sto cercando un sistema per trasmettere gli stati delle porte GPIO ad un server remoto tramite raspberry (cioè usare il raspberry come client e non come server), ma non riesco ad orientarmi. Che linguaggio mi consigli? Python? Ti risulta che sia già stato affrontato l’argomento? Grazie mille!
Autore
Ciao Mauro,
penso possa essere python una buona soluzione, certamente altri hanno scritto sull’argomento, io mai.
Ciao..Dopo il solito aggiornamento classico non funziona piu’l’interfaccia WEBIOPI…Mi chiede user e password ma entrando nella sezione GPIO HEADER dopo aver digitato l’indirizzo e la porta 8000 ( aprendola anche sul router) non si vedono piu’ in e out dei pin…Mi dai una mano a capire? grazie
Autore
Ciao Candido,
è molto tempo che non utilizzo questo prodotto, proverò prossimamente per dei progetti a riprenderlo se hai urgenza ti consiglio di leggere la documentazione del progetto che, ricordo, essere scritta molto bene ed eventualmente seguire delle discussioni sul sito ufficiale, se si tratta di un bug qualcun’altro lo avrà segnalato.
Grazie della risposta…Ho girato in lungo e in largo sulle documentazioni in rete in merito al problema ma non ho trovato nulla che risolva il problema…Tutto funzionava perfettamente prima del classico aggiornamento…Non sono un grande esperto per cui accetterei volentieri una maano…Grazie
Autore
Ciao Candido,
cercherò di provare anche questa interfaccia ma potrei non avere i tuoi stessi problemi dovresti controllare cosa si sia bloccato.
Grazie del tuo interessamento…Uso il Raspberry pi 3 quasi esclusivamente per accesso remoto tramite Teamviewer…Non ho niente di installato…Ho solo fatto il classico aggiornamento ( apt-get) ..se ti servono dati chiedi pure..Grazie
Candido
Autore
Ciao Candido,
dovrò provarlo appena posso con l’ultima versione di raspbian. Intanto prova a crearti una nuova immagine dal sito Raspberry originale ed installa su quella Webiopi .. dimmi poi se funziona.
OK..vedo di comprare una nuova SD e caricare l’ ultima versione di Raspbian…Il fatto strano e’ che ho due Raspberry identici ( tengo uno di riserva) e lo stesso problema e’ anche sull’ altro…Io credo sia dovuto al nuovo firmware installato…Fammi sapere se hai novita’ in merito..
I comandi usati per il solo aggiornamento sono stati:
sudo apt-get install rpi-update
sudo rpi-update
sudo apt-get upgrade
sudo apt-get update
Grazie
Autore
Giusto Candido.
Ciao Mauro…Hai delle novita’ in merito al problema? Mi sembra che altri abbiano lo stesso inconveniente…Vorrei capire cosa potrebbe essere prima di fare delle cose inutili..Ripeto..Non sono un esperto ma webiopi mi serve…Ci sono altre interfacce web che posso usare? Grazie Candido
Autore
Ciao Candido,
ancora nessun test eseguito, sono impegnato in altri progetti per il momento e non penso a breve di mettermi a lavorare su Webiopi.
Tu hai fatto qualche altra indagine?
Ciao…In rete qualcuno ha lo stesso problema ma non trovo soluzioni…Non so proprio dove indagare..
Autore
Ciao Candido,
inizia dal problema che ti si verifica e dai log del prodotto.
Ciao Mauro, ho provato a caricare su una sd di prova la nuova versione di Noobs e sopra la nuova versione di Raspian e tutto funziona correttamente…Vorrei solo sapere quale delle due ha creato il problema…Saluti e buone vacanze…Candido
Autore
Ciao Candido,
potrebbe essere uno qualsiasi dei software installati con la precedente versione che in fase di update hanno impedito a WebIoPi di funzionare o la nuova versione di Webiopi potrebbe essere stata adeguata alla versione Raspbian che tu hai installato sulla nuova SD.
Se sei curioso puoi verificare i log del prodotto e di sistema sulla SD non funzionante.
Grazie della risposta..Mi puoi indicare dove trovo i log del prodotto per fare un minimo di analisi?
Grazie
Candido
Autore
Ciao Candido,
non ricordo con precisione, dovresti consultare la documentazione del prodotto on-line sul sito dell’autore, trovi il link nell’articolo