Ritornando sul discorso "programmazione autonoma" dello Smart Hub (tanto caro a @Pix), il video dell'ultimo GBC di Akiyuki è un lampante esempio di come possa tornare utile il "caricamento" in memoria di un semplice programma (chiamiamolo 'scketch', come per Arduino) che venga eseguito in loop senza la necessità di avere uno Smartphone connesso.
Se guardate tutto il video, noterete che vengono utilizzati 4/5 smartphone, uno per ogni smart hub/move hub.
Entro l'anno, con il rilascio di un importante aggiornamento dell'App Powered Up, questo "inconveniente" dovrebbe risolversi benché resterà sempre il limite tecnico di quanti dispositivi BLE sarà in grado di supportare il nostro smartphone.
Limite che, almeno fino a 5 device, potrebbe essere superato utilizzando il Remote PU Controller come "gateway". In quel caso, lo smartphone si collegherebbe solo ed esclusivamente al Remote PU al quale, contemporaneamente, saranno connessi i vari smart hub da controllare.
In questi giorni, oltre a continuare il mio studio sullo smart hub, sto redigendo l'articolo sui motori (si, sarebbe dovuto esser pronto da settimane...) ed ogni giorno ne scopro una nuova.
Anche grazie agli esperimenti di Philo, che sta tentando di "spacchettare" il protocollo di comunicazione wired, è emerso che i motori L e XL rilasciati con il 42099 hanno una posizione 0 assoluta, così come i motori dello Spike (su quest'ultimi, la posizione dello zero assoluto è riportata anche visivamente sullo chassis).
Ancora non è ben chiaro come "comandare" il motore e come "intercettare" la comunicazione del "vai allo 0 assoluto/sono sullo 0 assoluto", dato che questa caratteristica non è contemplata nella documentazione rilasciata da LEGO lo scorso dicembre.
Si sta procedendo quindi per tentativi...
I motori tachimetrici, incluso quello introdotto con il boost, hanno inoltre una caratteristica molto interessante: l'intercettazione dello stallo.
Se il motore viene avviato e l'albero motore viene bloccato, dopo circa un secondo viene "staccata" l'alimentazione al motore.
Eseguendo alcuni test, ho appurato che nel momento in cui viene rilevato lo stallo (e tolta l'alimentazione) l'hub genera un messaggio di tipo "Port Feedback" tramite il quale viene informato il PU Remote, o il nostro smartphone, che il comando precedente (quello di "Start power") è stato scartato.
Questo messaggio contiene un payload in formato "bit mask" in quale contiene un bit (il 6°) non documentato.
Ho chiesto quindi al responsabile del firmware di "sganciare" questa informazione per comprendere al meglio il tipo di informazione fornita dall'hub (sono in attesa di un riscontro).
Un'altra cosa che non è chiara, al momento, è se la gestione dello stallo è implementata nell'elettronica del motore (possibile, dato che il chip a bordo dei motori PU intelligenti è in grado di supportare questa funzione) o se viene gestita direttamente dall'hub che riceve il dato sulla rotazione dell'albero.
Ovviamente, né il motore del treno, né il motore WeDo 2.0 (o simple motor, come volete chiamarlo) implementano la gestione dello stallo, non avendo alcuna elettronica interna.