Pagina 1 di 3

Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 26/01/2017, 18:23
da PDOR
Ciao a tutti, volevo creare una mini console con un RaspBerry pi Zero, ho già installato Retropie.
Volevo programmare i GPIO per poter collegare un pulsante [power], un led rosso e un pulsante [reset], quest'ultimo premendolo porta alla lista dei giochi.
Consigli, grazie.

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 27/01/2017, 11:44
da stef84
Non so se era tuoi interesse creare qualcosa di "home-Made" e in quel caso non saprei aiutarti.

Sennò, a meno di 20€ c'è questo che in pratica è quello c'è chiedi tu.

https://lowpowerlab.com/guide/atxraspi/


Inviato dal mio iPhone utilizzando Tapatalk

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 27/01/2017, 19:33
da PDOR
Ciao stef84, ti ringrazio ma non è quello che cerco perché non ci sarebbe comunque lo spazio e per alimentare il RaspBerry Zero utilizzo il suo ingresso mini usb power.
Quello che cerco io é l'utilizzo dei GPIO, per il LED ho risolto, mentre mi manca ancora il modo per connettere un 'interruttore per l'accensione/spegnimento e il pulsante [RESET] da utilizzare come il NES MINI...

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 29/01/2017, 2:52
da stef84
In realtà al posto della mini usb puoi saldare + e - sui pad sottostanti al raspy zero.
Per il reset, ci sono due passi appositi vicino alla GPIO, ma credo resettino completamente il raspy (non l'ho mai provato) e credo a te invece interessi tornare direttamente alla schermata principale di emulationstation "resettando" la rom e non tutto il raspy.
Per quello credo il modo ci sia, forse ti sara di aiuto la guida di Devil77 sull'uso di Retropie con GPIO, assegnando un pin della gpio per quella funzione su Retropie. Non so però se è possibile usare i controlli GPIO insieme al pad usb...


Inviato dal mio iPhone utilizzando Tapatalk

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 29/01/2017, 10:28
da PDOR
stef84 ha scritto: 29/01/2017, 2:52 In realtà al posto della mini usb puoi saldare + e - sui pad sottostanti al raspy zero.
Per il reset, ci sono due passi appositi vicino alla GPIO, ma credo resettino completamente il raspy (non l'ho mai provato) e credo a te invece interessi tornare direttamente alla schermata principale di emulationstation "resettando" la rom e non tutto il raspy.
Per quello credo il modo ci sia, forse ti sara di aiuto la guida di Devil77 sull'uso di Retropie con GPIO, assegnando un pin della gpio per quella funzione su Retropie. Non so però se è possibile usare i controlli GPIO insieme al pad usb...



Inviato dal mio iPhone utilizzando Tapatalk
Puoi linkare per favore?

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 29/01/2017, 13:09
da stef84
Qui trovi il mio Pi Zero, con i pad per collegarsi direttamente senza usare la miniUSB.

Qui invece trovi la guida di Devil78.

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 29/01/2017, 18:58
da devil78
Si ,puoi usare entrambi tranquillamente.

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 9:37
da PDOR
stef84 e devil78 vi ringrazio.
Adesso devo capire come fare per l'alimentazione...

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 13:51
da sant0
tagli il cavo usb mini che hai utilizzato fin'ora e e saldi i 2 cavi sotto i 2 pin. Se vuoi metterci uno switch on/off interrompi il negativo e ci metti uno switch a 2 vie

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 17:04
da PDOR
sant0 ha scritto: 31/01/2017, 13:51 tagli il cavo usb mini che hai utilizzato fin'ora e e saldi i 2 cavi sotto i 2 pin. Se vuoi metterci uno switch on/off interrompi il negativo e ci metti uno switch a 2 vie
Ciao sant0, per Switch a 2 vie intendi un pulsante NO?
Ma non posso interrompere la pista del positivo nella schedina da collegare all'interruttore e continuare ad usare il mini USB per l'alimentazione?

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 17:30
da dR.pRoDiGy
Comandi di accensione via Gpio non ne puoi mettere: sono usabili solo a rasp acceso e con OS caricato.
Spegnimento sw (= premendo fa lo shut down controllato) invece si.
Per l'accensione invece come già detto devi necessariamente interrompere l'alimentazione.. Occhio però che a spegnere brutalmente si fiammano le SD.
Ps: uno switch a 2 vie interrompe 2 linee (sia + che -, in sostanza) invece che una sola.
Su interruttori per la 220v sono l'ideale (oltre che obbligatori per legge) mentre su un cavo a 5v come l'usb invece onestamente non ne vedo l'esigenza.. Si interrompe il positivo e via :)

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 19:24
da sant0
beh si il rasp lo puoi alimentare sia via usb che via gpio. Non so cosa vuoi realizzare tu se hai in mente un case con alimentare esterno o interno. Ad ogni modo che tu lo alimenti da gpio o da usb il discorso non cambia per spegnerlo brutalmente devi interrompere la linea di alimentazione ed io consiglio sempre il negativo e non il positivo. Lo switch che intendo io è questo per capirci http://www.elettroweb.net/it/interrutto ... ff-on.html è a due vie quindi potresti interrompere sia positivo che negativo (cosa che sconsiglio) o lo cerchi ad una via oppure nessuno ti vieta su un switch a 2 vie di saldarne una sola... funziona cmq.... il pulsante esiste di 2 tipi normalmente aperto e normalmente chiuso quindi potresti usarlo per realizzare un hard reset (come quello del pc per capirci) ma non per fare l'accensione/spegnimento. O meglio ancora si può fare ma devi aggiungere dell'elettronica. Paradossalmente puoi utilizzare anche l'interruttore di una vecchia lampada ad tavolo ma tutto dipende da cosa vuoi realizzare.
Sulla gpio potresti poi ulteriormente realizzare un pulsante per far spegnere via software il rasp

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 31/01/2017, 22:26
da dR.pRoDiGy
Beh certo, il connettore gpio porta anche gnd e 5v, quindi il rasp si può alimentare da lì (più comodo da cablare in effetti).. ma tecnicamente non è che per questo si possa parlare di gpio.

Io nel dubbio cmq taglierei il positivo.. così i componenti possono scaricarsi sempre liberamente a massa.. Il che mi pare più corretto.
Perché tu taglieresti il negativo invece, sant0?



Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 9:35
da sant0
per il motivo opposto prodigy (tra l'altro noto che siamo anche vicini... più o meno io sono periferia nord :D) Cioè per evitare picchi di tensione quando vai ad accendere la scheda

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 10:14
da picerno
anche io sono propenso per interrompere il positivo. se l'alimentatore non è ben isolato dalla terra, interrompendo il negativo ci può essere un ritorno di massa da altri connettori come può essere in questo caso il cavo HDMI, lasciando il dispositivo alimentato male.
comunque sia, il mio dispositivo che fa da mediacenter tramite libreelec, sta sempre alimentato e lo gestisco con un interruttore unipolare in questo modo.
il raspberry si può accendere tramite il pin 5 del connettore GPIO chiudendolo verso GND sul vicino pin 6. lo stesso pin lo tengo sotto controllo quando il sistema è acceso per lo spegnimento controllato tramite lo script seguente, che ho messo in esecuzione automatica.

Codice: Seleziona tutto

#!/bin/bash

GPIOpin1=3

echo "$GPIOpin1" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio$GPIOpin1/direction

power=0

while [ $power = 0 ]; do
  sleep 1
  power=$(cat /sys/class/gpio/gpio$GPIOpin1/value)
  echo $power
  if [ $power != 0 ]; then
    poweroff
#    shutdown -h now
  fi
done
c'è anche un motivo per cui ho usato un interruttore quando avrei potuto usare un pulsante. siccome quando il raspberry viene alimentato si avvia da solo, se l'interruttore sta in posizione off, il sistema automaticamente si rispegne quando va e viene la corrente

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 14:34
da sant0
picerno ha scritto: 01/02/2017, 10:14 anche io sono propenso per interrompere il positivo. se l'alimentatore non è ben isolato dalla terra, interrompendo il negativo ci può essere un ritorno di massa da altri connettori come può essere in questo caso il cavo HDMI, lasciando il dispositivo alimentato male.
questo non lo avevo affatto considerato, che potesse prendere la massa dagli altri connettori tipo il cavo hdmi non ci avevo proprio pensato, anzi se non lo avessi scritto tu non ci sarei mai arrivato...
comunque sia, il mio dispositivo che fa da mediacenter tramite libreelec, sta sempre alimentato e lo gestisco con un interruttore unipolare in questo modo.
il raspberry si può accendere tramite il pin 5 del connettore GPIO chiudendolo verso GND sul vicino pin 6. lo stesso pin lo tengo sotto controllo quando il sistema è acceso per lo spegnimento controllato tramite lo script seguente, che ho messo in esecuzione automatica.

Codice: Seleziona tutto

#!/bin/bash

GPIOpin1=3

echo "$GPIOpin1" > /sys/class/gpio/export
echo "in" > /sys/class/gpio/gpio$GPIOpin1/direction

power=0

while [ $power = 0 ]; do
  sleep 1
  power=$(cat /sys/class/gpio/gpio$GPIOpin1/value)
  echo $power
  if [ $power != 0 ]; then
    poweroff
#    shutdown -h now
  fi
done
c'è anche un motivo per cui ho usato un interruttore quando avrei potuto usare un pulsante. siccome quando il raspberry viene alimentato si avvia da solo, se l'interruttore sta in posizione off, il sistema automaticamente si rispegne quando va e viene la corrente
Non sapevo che si potesse accendere il rpi mettendo a massa il pin 5 e quella che hai mostrato mi sembra davvero una bella soluzione di gestire l'accensione e lo spegnimento. Ho capito il ragionamento ma ho una leggera difficoltà a leggere lo script bash. In sostanza setti ad ogni accensione power a 0 quindi entri in un loop che rimane a fare niente finchè non azioni l'interruttore che porta i 5v sul pin n3 ? Non ho capito il circuito allora, non usi solo i pin 5 e 6 ?

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 15:49
da picerno
sant0 ha scritto: 01/02/2017, 14:34 questo non lo avevo affatto considerato, che potesse prendere la massa dagli altri connettori tipo il cavo hdmi non ci avevo proprio pensato, anzi se non lo avessi scritto tu non ci sarei mai arrivato...
è una cosa che può succedere in generale ma forse in questo caso non può avvenire
sant0 ha scritto: 01/02/2017, 14:34 Non sapevo che si potesse accendere il rpi mettendo a massa il pin 5 e quella che hai mostrato mi sembra davvero una bella soluzione di gestire l'accensione e lo spegnimento. Ho capito il ragionamento ma ho una leggera difficoltà a leggere lo script bash. In sostanza setti ad ogni accensione power a 0 quindi entri in un loop che rimane a fare niente finchè non azioni l'interruttore che porta i 5v sul pin n3 ? Non ho capito il circuito allora, non usi solo i pin 5 e 6 ?
crea una variabile power impostandola a 0 per evitare che al primo controllo non abbia un valore diverso. entra in un loop dove copia nella variabile power lo stato del pin. se il valore è diverso da zero perchè l'interruttore è stato aperto esegue il comando poweroff. l'interruttore è collegato tra il pin 5 e 6 del connettore e non porta i 5V al pin 5 ma lo collega a GND. l'incomprensione nasce dal fatto che il pin 5 del connettore è mappato al GPIO3 come puoi vedere da questa immagine https://cdn.sparkfun.com/assets/learn_t ... pinout.jpg

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 16:19
da dR.pRoDiGy
:-o Cacchio che bella soluzione picerno!!! <-w00t-anim->

Anch'io ignoravo completamente questa sorta di "bottone ACPI" sui GPIO del Rasp.. dopo che l'hai scritto ne ho poi trovato conferma in giro:
Wake from halt

Geniale anche l'uso dell'interruttore bistabile, che in quella maniera diventa come fosse un vero e proprio interruttore fisico, il quale però dietro le quinte esegue uno shutdown pulito invece di staccare brutalmente l'alimentazione..

Mi sa che questa me la riciclo, e anche presto.. grazie mille!!! <-thumbup-> <-thumbup->

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 16:39
da sant0
ah ecco allora adesso mi torna tutto, grazie picerno. Ho giocato poco con la gpio del rpi e sapevo che via codice si può scegliere di "chiamare" i pin con la numerazione gpio o per numero di pin, perlomeno in python con la funzione setmode() in RPi.GPIO e l'ho sempre usata per numero di pin.

Thz 1000 ho imparato almeno 3 cose in questo thread ;)

ps me la riciclo anch'io ed in fretta pure ! :p

Re: Raspberry Pi Zero + pulsante on/off+ reset+led

Inviato: 01/02/2017, 17:03
da picerno
dR.pRoDiGy ha scritto: 01/02/2017, 16:19 :-o Cacchio che bella soluzione picerno!!! <-w00t-anim->

Anch'io ignoravo completamente questa sorta di "bottone ACPI" sui GPIO del Rasp.. dopo che l'hai scritto ne ho poi trovato conferma in giro:
Wake from halt
e si anche io l'ho trovata in giro questa funzionalità per risolvere il mio problema
dR.pRoDiGy ha scritto: 01/02/2017, 16:19 Geniale anche l'uso dell'interruttore bistabile, che in quella maniera diventa come fosse un vero e proprio interruttore fisico, il quale però dietro le quinte esegue uno shutdown pulito invece di staccare brutalmente l'alimentazione..
visto che già uso lirc, inizialmente volevo poterlo fare con il telecomando ma non ho trovato una soluzione senza fare un piccolo circuito e allora mi sono accontentato dell'interruttore. mi sarebbe piaciuto di più un pulsante ma l'ipotesi che rimanesse acceso al ripristino della corrente dopo un blackout non mi andava giù
sant0 ha scritto: 01/02/2017, 16:39 ah ecco allora adesso mi torna tutto, grazie picerno. Ho giocato poco con la gpio del rpi e sapevo che via codice si può scegliere di "chiamare" i pin con la numerazione gpio o per numero di pin, perlomeno in python con la funzione setmode() in RPi.GPIO e l'ho sempre usata per numero di pin.
Thz 1000 ho imparato almeno 3 cose in questo thread ;)
python, che non uso, è sicuramente più potente di un semplice shell script, ma in questo caso è bastato :wink:
dR.pRoDiGy ha scritto: 01/02/2017, 16:19 Mi sa che questa me la riciclo, e anche presto.. grazie mille!!! <-thumbup-> <-thumbup->
sant0 ha scritto: 01/02/2017, 16:39 ps me la riciclo anch'io ed in fretta pure ! :p
mi fa piacere, fate pure :wink: . non dimenticate di chiamare lo script con la & alla fine del comando altrimenti il boot si blocca in quel while