-
Notifications
You must be signed in to change notification settings - Fork 0
Pulsanti
Per prima cosa è necessario collegare i pulsanti ai pin del Raspberry Pi. Per ognuno serve un pin diverso e un pin "ground" che può essere comune. Per il pulsante di accensione/spegnimento è OBBLIGATORIO utilizzare il pin 3 (BCM) Per gli altri bottoni consiglio un pin tra questi: [17, 27, 22, 23, 24, 25, 5, 6, 16, 26] (BCM). Qui puoi trovare un modello della pulsantiera che puoi stampare in 3D.
Una volta creato il cavo collegarlo da un lato ai pulsanti (tramite i connettori faston) e dall'altro lato al Raspberry Pi
Ora è necessario configurare la parte software della pulsantiera. Questa procedura può essere eseguita scrivendo sul file buttons.json
:
- gpio-mode
"gpio-mode" : "BCM",
Tipo di numerazione dei pin ("BCM" o "BOARD") scelta per i campi successivi
- gpio-setup
"gpio-setup" :
{
"27" :
{
"short-press" : "clear",
"long-press" : [0,0,0]
},
"17" :
{
"short-press" : "Rainbow swirl fast",
"long-press" : [0,128,128]
},
"22" :
{
"short-press" : "Clock",
"long-press" : null
}
},
Informazioni relative ai pulsanti: pin scelti. Per ogni pin/pulsante esistono 2 modalità: short-press
(pressione normale) e long-press
(pressione prolungata). A ognuno di essi è possibile assegnare un effetto (es. "Rainbow swirl fast"
) o un colore in formato RGB (es. [0,128,128]
) oppure nulla ( null
). Sconsiglio di modificare:
{
"short-press" : "clear",
"long-press" : [0,0,0]
}
Il primo fa tornare Hyperion alla modalità di cattura rimuovendo effetti/colori precedentemente applicati, il secondo, solo quando assegnato insieme a "short-press" : "clear"
, spegne competamente i LEDs rimuovendo prima effetti/colori precedentemente applicati, e poi applicando un colore nero (led nero = led spento) con la stessa priorità della modalità di cattura che, solitamente, è la più bassa di tutte (così che un comando con qualsiasi priorità possa sovrascriverlo).
Puoi aggiungere quanti pulsanti vuoi semplicemente aggiungendo, come primo elemento dopo "gpio-setup" : {
, il seguente codice:
"numero del pin" :
{
"short-press" : "effetto"/colore/null,
"long-press" : "effetto"/colore/null
},
- priority
"priority" : 100
priorità dei pulsanti (parametro ignorato dal pulsante a cui è assegnato clear
)