Ieri pomeriggio ho speso un po' di tempo ad analizzare la nuova versione dell'App Powered App (la 3.1.0). Sono passati 3 mesi dal rilascio della precedente 3.0.0 (disponibile da poco prima di Natale 2019) che vide l'introduzione di una caratteristica fondamentale: la possibilità di collegare/programmare fino a 4 Hubs (Boost, Smart o Technic Hub).
La versione 3.1.0 introduce ulteriori due funzionalità interessanti (oltre ad alcuni "bug fix" non meglio specificati
- Possibilità di collegare anche il telecomando Powered Up
- Integrazione della protocollo di trasmissione IR (Raggi Infrarossi) specifico del mondo Power Function 1.0
Sono due interessanti novità, perché estendono ulteriormente le capacità dei dispositivi Powered Up (dando una flessibilità maggiore al telecomando) e, soprattutto, mettendo in "contatto" i due sistemi Powered Up e Power Function.
(nota: in questa nuova versione ho riscontrato anche diversi bug di cui vi parlerò in un successivo post)
Partiamo da analizzare la novità che riguarda il telecomando.
Chi ha avuto modo di spippolare con programmi/script di terze parti, sa già che il telecomando è anch'esso un dispositivo BLE "server" al quale ci si può connettere e ricevere "messaggi di notifica" quando uno dei 7 pulsanti viene premuto. Nel computo dei pulsanti viene considerato anche il pulsante di accensione/spegnimento (quello verde) che, una volta accesso il telecomando può essere usato come un normale 'push button'.
Solitamente (ovvero senza App) il telecomando, può controllare lo stato delle due porte di uno Smart Hub. Con un meccanismo un po' contorto, in realtà, può controllare anche più Smart Hub (anche in modo parallelo). In ogni caso, si tratta sempre di agire sulle due porte del singolo Smart Hub per aumentare/abbassare la velocità dei motori, o fermarli.
Mediante l'App, diversamente, ora possiamo estendere questo funzionamento usando i pulsanti come trigger di routine più complesse.
Cerco di spiegarmi meglio usando uno scenario che contempla un telecomando e 3 Smart Hub (ovvero il massimo dei dispositivi collegabili all'App che, ricordo, possono essere in tutto 4), quest'ultimi montati su altrettanti treni: premendo un *solo* pulsante del telecomando (ad esempio, il '+' a sinistra), posso far partire contemporaneamente tutti i 3 treni al 50% di velocità. Premendo una seconda volta lo *stesso* pulsante potrei fermarli oppure accelerare la corsa. Premendo un altro pulsate (il '-' a sinistra), potrei lanciare una sequenza che accende alternativamente le luci LED collegate alla seconda porta degli Smart Hub. Premendo un terzo pulsante (il 'rosso' a sinistra) potrei eseguire dei suoni ... Oppure, se al posto dei LED utilizzassi 3 sensori di colore (uno per ogni hub) potrei far si che alla pressione di un pulsate (il '+' a destra) tutti i treni si fermino in corrispondenza del primo marker rosso che incontrano lungo i loro percorso, per poi ripartire automaticamente dopo 5 secondi. Premendo un altro pulsante (il '-' a destra), potrei far fermare i treni in corrispondenza per primo marker giallo presente sul percorso, per poi farli ripartire in direzione opposta a quella precedente.
Sostanzialmente, possiamo utilizzare il telecomando come trigger di "scenari", con una combinazione di possibilità il cui limite è dovuto solo al numero di Smart Hub controllabili (3) e alla nostra fantasia.
Non solo: dato che è possibile connettere all'App anche il Technic Hub, possiamo ora usare il telecomando per interagire con le porte di questo Hub che, nativamente, non può (almeno per ora) interfacciarsi direttamente con il controller.
In questo video, banalmente, potete vedere come accendo i LED connessi alle 4 porte dell'Hub.
Pensate ad un "macchinario" (una catena GBC) o un diorama animato (ad esempio, quello di @Toretto1981) con 3 Technic Hub (quindi, potenzialmente 12 motori) controllabili da un solo controller...
Come si interagisce, quindi, con il telecomando?
Il sistema più immediato, è quello di utilizzare il nuovo blocco 'remote control' in combinazione con il blocco 'start on true'.
Partiamo dal considerare che il telecomando identifica i due 'controller' come A e B:
In questo esempio, alla pressione del tasto '+' del controller 'A', viene eseguito il suo di un fischio:
E possibile indicare quale dei due controller vogliamo 'intercettare':
Quale pulsante...
E, nel caso di più Smart Hub connessi, possiamo identificare l'indice in questo modo (vedi questo mio post )
In un prossimo post, parlerò di come usare le funzionalità IR, e di come interfacciarsi ai 'vecchi' Power Function 1.0