ePrivacy and GPDR Cookie Consent by TermsFeed Generator MOBIFLIGHT e ARDUINO per gestire i pulsanti dell'HOME COCKPIT | Il mio Learjet 45 | DomoticsDuino - Ingegneria informatica, Smart Home / OpenHAB, Flight Sim e altro...
Il mio Learjet 45 (63 posts)

19/03/2023

MOBIFLIGHT e ARDUINO per gestire i pulsanti dell'HOME COCKPIT [English version]

di Marco Lamanna

Chi ha seguito la costruzione del mio Home Cockpit negli anni passati, sa che ho utilizzato il circuito di una tastiera standard per interfacciare i pulsanti del simulatore.

Ne ho parlato (tanti anni fa!) in questo post /it/blog/learjet-45-home-cockpit/post/2012/02/interfaccia-input-artigianale.html

L'idea era molto interessante e veramente a basso costo...smontando una banale tastiera e mettendo tanta pazienza nel saldare tutti i contatti era possibile creare un'interfaccia di input per poter gestire tutti i pulsanti in maniera molto semplice e low-cost.

Purtroppo qualche mese fa, durante le fasi di ripristino del mio Home Cockpit, a causa di qualche collegamento sbagliato, sono riuscito a bruciare ben due tastiere.

Ho quindi iniziato a pensare a qualche altra alternativa (anche perchè avevo finito le tastiere!) e mi sono imbattuto nel fantastico MOBIFLIGHT.

In due parole, MOBIFLIGHT di Sebastian Möbius è un progetto Open Source che permette l'integrazione di Hardware standard con il proprio simulatore di volo.

Utilizzando ad esempio il famoso microcontrollore ARDUINO, è possibile gestire INPUT (pulsanti, potenziomentri, ...) e OUTPUT (led, lcd, servi, ...) del simulatore.

C'è un ottimo Wiki sulla pagina ufficiale di GitHub che vi permette di approfondire le potenzialità di questo progetto: https://github.com/MobiFlight/MobiFlight-Connector/wiki

Anche il canale Youtube ufficiale del progetto è una grande fonte di informazioni e supporto: https://www.youtube.com/@MobiFlight

Dopo aver dato una lettura alla documentazione e guardato qualche tutorial su Youtube, ho deciso che MOBIFLIGHT poteva fare al caso mio.

Fortunatamente a casa avevo qualche scheda ARDUINO UNO (visti i miei esperimenti di domotica) non utilizzata e quindi ho deciso di fare una prova, anche se quel particolare tipo di scheda (ARDUINO UNO) non è nell'elenco di quelle ufficialmente supportate (https://www.mobiflight.com/en/documentation/module.html).

Mi creo quindi un caso di test molto semplice: un pulsante collegato ai pin di ARDUINO UNO che scatena un evento "virtuale" verso MOBIFLIGHT.

Partiamo quindi dal download e installazione di MOBIFLIGHT CONNECTOR, il software per Windows che permette la connessione con il simulatore e la completa gestione della configurazione.

Al primo avvio MOBIFLIGHT CONNECTOR scansiona il sistema alla ricerca di schede ARDUINO collegate. Nel mio caso, anche se non ufficialmente supportata, viene subito trovata la mia ARDUINO UNO; mi viene anche chiesto di installare all'interno il firmware di MOBIFLIGHT, cosa che faccio immediatamente

Per chi non lo sapesse, il firmware è un particolare software che viene installato sui microcontrollori per istruirli su come devono gestire INPUT e OUTPUT a loro collegati.

In questo caso, il firmware MOBIFLIGHT fa parte del progetto ed è necessario per permettere alla scheda ARDUINO di capire come deve gestire i vari dispositivi ad essa collegati. Questa operazione viene fatta solo la prima volta che si utilizza una nuova scheda ARDUINO. Nel caso vengano pubblicati aggiornamenti al firmware, il sistema ci chiederà se vogliamo o meno eseguire l'aggiornamento.

Con il firmware installato, ARDUINO viene subito riconosciuto come Modulo MOBIFLIGHT da configurare.

Siamo quindi pronti alla vera e propria configurazione

A questo punto, colleghiamo il nostro pulsante di test ad un PIN di INPUT di ARDUINO e lo aggiungiamo nella configurazione del modulo su MOBIFLIGHT, avendo cura di inserire il numero di pin corretto.

Ogni volta che si effettua una modifica alla configurazione del modulo, bisogna ricordarsi di aggiornare la configurazione sulla scheda, utilizzando la funzione Upload config

Ci spostiamo poi nella configurazione degli INPUT per assegnare una funzione sul simulatore al pulsante di test creato precedentemente.

Nel mio caso, ho assegnato il freno di parcheggio, utilizzando gli offset di FSUIPC (uso ancora FSX).

A questo punto siamo pronti a verificare il funzionamento utilizzando la funzione di TEST, che MOBIFLIGHT ci mette a disposizione, senza la necessità di dover per forza avere il simulatore acceso.

Di seguito trovate un breve video che mostra tutti i passi effettuati: dal primo avvio di MOBIFLIGHT, alla sua configurazione fino al test finale, che è avvenuto con successo. Il prossimo step sarà quello di acquista una scheda ufficialmente supportata (prenderò una ARDUINO NANO compatibile), anche perchè ho bisogno di molti pin per poter gestire tutti i pulsanti e con ARDUINO UNO non ne avrei abbastanza.

[Guarda su YOUTUBE]