Home Homebrew Rilasciato MissionControl v0.5.0 Beta con supporto per la versione 0.19.5 di...

[Scena Switch] Rilasciato MissionControl v0.5.0 Beta con supporto per la versione 0.19.5 di Atmosphère

109
0

Disponibile un nuovo aggiornamento beta per la versione 0.5.0 di MissionControl, il sysmodule si dimostra come la versione bluetooth del modulo di sistema sys-con che permette di accoppiare una stragrande maggioranza di controller alla console Switch.

Questa nuova versione, oltre al supporto per la versione 0.19.5 di Atmosphère e HOS 12.1.0, incorpora anche una manciata di aggiunte minori e correzioni di bug.

Questa, si spera, sarà l’ultima versione alpha/beta prima della pubblicazione della versione 0.5.0 stabile, attualmente l’unica cosa che resta da fare e far funzionare nuovamente l’associazione del controller Wii/WiiU su firmware 12.x.x.

Caratteristiche

  • Supporta tutte le versioni del firmware.
  • Associa i controller Bluetooth in modo nativo tramite la schermata Cambia impugnatura/ordine.
  • Rimappatura nativa dei pulsanti (firmware 10.0.0+).
  • Il sismodule btdrv-mitm aggiunge i comandi IPC di estensione che possono essere utilizzati per interagire con il processo bluetooth senza interferire con lo stato del sistema.

Controller supportati

Attualmente sono supportati i seguenti controller. Se disponi di una variante di terze parti di uno dei seguenti o di un controller Bluetooth che non è stato elencato, valuta la possibilità di inviare un problema con i dettagli del controller, inclusi vid/pid, per richiedere supporto.

  • Telecomando Nintendo Wii + estensioni (Nunchuck, Classic Controller, Classic Controller Pro, SNES Mini, TaTaCon (Taiko drum)).
  • Controller Nintendo WiiU Pro.
  • Controller Sony DualShock4.
  • Microsoft Xbox One S/X Controller*
  • NVidia Shield Controller
  • Ouya Controller
  • Gamestick Controller
  • Gembox Controller
  • Ipega Controllers (9017s, 9023, 9062S, 9076, 9078, 9087 9096 hanno confermato il funzionamento. Altri possono funzionare anche).
  • Xiaomi Mi Controller
  • Steelseries Free
  • GameSir G3s
  • GameSir G4s
  • Hori Onyx
  • 8BitDo ZERO (la maggior parte degli altri controller 8BitDo ha una modalità Switch disponibile. Potrebbe richiedere l’aggiornamento del firmware)
  • PowerA Moga Hero
  • PowerA Moga Pro 2
  • Mad-Catz C.T.R.L.R
  • Razer Serval
  • Mocute 050

Nota: Non tutti i controller wireless per Xbox One supportano il Bluetooth. Le varianti precedenti utilizzano un protocollo proprietario a 2,4 Ghz e non possono essere utilizzate con la console Switch. Vedere qui per informazioni sull’identificazione della variante Bluetooth.

Requisiti

  • Una console Nintendo Switch hackerabile con almeno la versione 0.14.2 del Custom Firmware Atmosphère. Altri firmware personalizzati non sono supportati.
  • Controller Bluetooth compatibile.

Installazione

Scaricare l’archivio .zip ed estrarlo direttamente  nella directory principale della tua scheda SD. Affinché MissionControl diventi attivo, è necessario riavviare la console.

Si consiglia dopo il riavvio di scollegare anche i controller fisicamente collegati dalla console, eliminare il database di accoppiamento e ricollegare tramite Bluetooth per assicurarsi che i controller Switch esistenti abbiano l’ID hardware corretto memorizzato e possano essere riconosciuti correttamente.

Per eliminare il database, accedere a Impostazioni di sistema-> Controller e sensori-> Disconnetti controller.

Importante: Atmosphère >= 0.14.2 è necessario per eseguire questa versione. Le versioni precedenti si bloccheranno sul logo Nintendo durante l’avvio. Si consiglia inoltre agli utenti che eseguono l’aggiornamento dalla versione precedente di MissionControl di cancellare il database di accoppiamento e di ricollegare i controller con la versione 0.2.0. La mancata cancellazione delle vecchie voci può causare il rilevamento errato di controller non switch.

Utilizzo

Installare MissionControl sulla scheda SD, riavviare la console Switch e accoppiare i controller come faresti normalmente tramite la schermata Controller > Cambia impugnatura/ordine. Una volta accoppiati, i controller si riconnetteranno automaticamente quando vengono svegliati.

La maggior parte delle funzionalità native dovrebbe funzionare (ad eccezione di cose come l’aggiornamento del firmware). Se trovi qualcosa che non funziona, apri un problema.

Associazione controller

I controller supportati hanno ciascuno i propri metodi per accedere alla modalità di associazione/sincronizzazione. Di seguito sono riportate le istruzioni per accedere a questa modalità per ogni tipo supportato.

Controller Wii (U)

Premere il pulsante rosso di sincronizzazione sul retro del controller. I LED del controller lampeggiano rapidamente.

Controller Dualshock4

Tieni premuti contemporaneamente i pulsanti +  finché la barra luminosa non inizia a lampeggiare. Se eseguito correttamente, lo schema di lampeggiamento assomiglierà a un battito cardiaco, altrimenti lampeggerà periodicamente.

Controller Xbox One

Premere e tenere premuto il pulsante guida (X) finché il LED non inizia a lampeggiare. Quindi premere e tenere premuto il piccolo pulsante di sincronizzazione sul retro vicino alla porta di ricarica finché il LED non inizia a lampeggiare più rapidamente.

Dovresti anche assicurarti che il firmware del controller sia aggiornato, poiché i vecchi firmware erano noti per avere un bluetooth flakey.

Per altri controller fare riferimento al manuale utente del controller per informazioni su come metterlo in modalità di sincronizzazione.

Come funziona

MissionControl funziona da Man-In-The-Middling al modulo del sistema Bluetooth e intercettando i suoi comandi IPC di inizializzazione e gli eventi di sistema e traducendo i dati in entrata/uscita per convincere lo Switch che sta comunicando con un Controller Pro ufficiale.

Per ottenere ciò, il modulo btdrv-mitm ottiene gli handle per gli eventi di sistema bluetooth e la memoria condivisa quando il sistema tenta di inizializzarli su IPC tramite i moduli btm e hid. Quindi crea le proprie versioni secondarie di questi e passa i loro handle invece dell’originale.

Ciò consente di apportare modifiche a qualsiasi buffer di dati prima di notificare (o meno) il sistema. Inoltre, il comando IPC WriteHidData viene intercettato per tradurre o eliminare le richieste in uscita al controller. In quest’ultimo caso, risposte false possono essere scritte direttamente nel buffer della memoria condivisa.

L’intercettazione dei comandi IPC di inizializzazione consente inoltre agli homebrew di utilizzare correttamente il servizio bluetooth. Normalmente, la chiamata di uno qualsiasi dei comandi IPC che inizializzerebbero o finalizzerebbero gli eventi di sistema causerebbe un arresto anomalo della console o invaliderebbe gli handle di eventi tenuti dai processi di sistema.

Con btdrv-mitm siamo in grado di distribuire gestori di eventi alternativi quando l’homebrew tenta di inizializzare un’interfaccia e reindirizzare gli eventi di sistema reali a quelli invece degli eventi contenuti nei processi di sistema.

Le patch IPS al modulo Bluetooth sono fornite per (ri)abilitare il passaggio di codici PIN abitrari quando viene utilizzato l’accoppiamento legacy Bluetooth (Nintendo codifica un valore di '0000', ignorando gli argomenti IPC). Ciò consente ai dispositivi Wii (U) di essere associati alla console.

Caratteristiche pianificate

  • Applicazione per la gestione del controller.
  • Supporto Rumble.
  • Supporto per il movimento.
  • Supporto per tastiera e mouse.

Changelog v0.5.0 beta 5

  • Aggiunto supporto per il controller AtGames Legends Pinball.
  • Aggiunte patch ips per tutti i firmware 12.x.x per rilassare i controlli della classe del dispositivo aggiunti in 12.0.0. Ciò consente a ipega e a molti altri controller che si pubblicizzano come tastiere o altri dispositivi di input di accoppiarsi nuovamente.
  • Aggiunto il supporto per il vecchio formato di report del controller Xbox One. L’aggiornamento del firmware del controller non è più un requisito per la corretta mappatura dei controlli.
  • Aggiunta un’opzione di configurazione per disabilitare la barra luminosa a LED sui controller Sony Dualshock4 e Dualsense.
  • Aggiunti ritardi tra la lettura/scrittura della memoria del controller durante l’inizializzazione delle estensioni del controller Wii. Ciò dovrebbe rendere più affidabile il rilevamento dei controller di estensione per le persone che hanno riscontrato problemi.
  • Frequenza di segnalazione predefinita ridotta del controller Dualshock4 da 1000Hz a 125Hz per adattarsi al controller Switch Pro. Questo risolve un problema per cui l’utilizzo di un controller Dualshock4 potrebbe degradare seriamente le prestazioni wifi e causare problemi con la riproduzione LAN.
  • Il comando SetTsi ora non può essere inviato solo ai controller in cui è noto creare problemi (attualmente i controller Xbox One e Gamesir). Ciò risolve un problema per cui un controller Dualshock4 collegato insieme a un controller Nintendo ufficiale subirebbe un jitter significativo, rendendolo inadatto ai giochi ritmici. Anche il blocco di questo comando potrebbe aver avuto un ruolo nei problemi wifi menzionati sopra.
  • Corretto un bug per cui alcuni pulsanti del wiimote non potevano essere premuti con un controller di estensione collegato.
  • Corretto un bug per cui i controller Xiaomi mostravano sempre livelli di batteria bassi o scarichi.
  • Maggiore precisione della segnalazione del livello della batteria in generale.
  • Rimosso il fork personalizzato di libnx ora che tutte le modifiche rilevanti sono state upstream. Il sottomodulo libnx ora punta al ramo master ufficiale e, al momento della scrittura, Mission Control può essere compilato con la versione ufficiale di devkitPro senza la necessità di compilarlo da soli.

Changelog v0.5.0 Alpha 4

  • Questa è la stessa della pre-release originale, aggiornata per funzionare con con la versione 0.19.4 di Atmosphère e il firmware 12.0.3.

Questa versione incorpora gli aggiornamenti apportati a libstratosphere rispetto alla versione precedente che rilassano i controlli di versione, il che significa che questi aggiornamenti a Mission Control per ogni versione minore di Atmosphere non dovrebbero più essere richiesti.

Changelog v0.5.0 Alpha 3

  • Questa è la stessa della pre-release originale, aggiornata per funzionare con con la versione 0.19.3 di Atmosphère e il firmware 12.0.2.

Changelog v0.5.0 Alpha 2

  • Questa è la stessa della pre-release originale, aggiornata per funzionare con con la versione 0.19.2 di Atmosphère.

Changelog v0.5.0 pre-release

  • Aggiunto supporto per il firmware 12.0.0.
  • Aggiunto supporto rumble iniziale per i principali controller di console selezionati.
  • Aggiunto supporto per i seguenti controller:
    • Razer Raiju Tournament.
    • Gamesir T1s.
    • 8BitDo SN30 Pro Xbox Cloud Gaming Edition.
    • Mad Catz C.T.R.L.R for Samsung.
    • Steelseries Stratus Duo.
    • iCade controller.
    • LanShen X1Pro.
  • Aggiunto supporto per i LED e i colori della barra luminosa del Dualsense con segnalazione del livello della batteria (grazie @Hydr8gon).
  • Aggiunto un file ini di configurazione del modulo globale.
  • Aggiunto supporto per lo spoofing del nome e dell’indirizzo dell’adattatore host Bluetooth.
  • Aggiunto supporto per un formato di report alternativo per i controller Mocute 050 su alcune revisioni del firmware.
  • Aggiunto mitm per la funzione btdrv SetTsi, in modo che il comando non venga inviato a controller non switch. Questo ha corretto un problema che i controller Gamesir G3s e G4s venivano scollegati dopo un po’ di tempo. Può migliorare anche l’affidabilità per altri controller.
  • Rimossa la chiamata alla funzione CheckApiVersion. Questo era destinato all’uso interno di Atmosphere ed era il motivo principale per cui Mission Control richiedeva spesso un aggiornamento dopo una nuova versione di Atmosphere.
  • Le combinazioni delle combo per i pulsanti Home e Capture ora vengono applicate anche ai controller Nintendo ufficiali.
  • Aggiornato per utilizzare la nuova semantica sf introdotta in Atmosphere 0.18.0.
  • Aggiornato per utilizzare l’ultima versione di libstratosphere. Ciò riduce le dimensioni del modulo di quasi il 50%.
  • Aggiunto git branch, commit hash e versione taggata durante la generazione del file .zip per la distribuzione.

Problemi noti e limitazioni

  • I controller non Switch non possono essere utilizzati per riattivare il sistema dalla sospensione.
  • I controller per i quali l’ID hardware non è stato inserito nella whitelist per l’identificazione non verranno riconosciuti come connessi. Questo può includere alcuni controller Switch ufficiali. Tuttavia, si accoppieranno comunque con la console e memorizzeranno i loro dettagli nel database. Se incontri un controller di questo tipo, crea un problema con la richiesta di supporto.
  • I controller Wii(U) possono impiegare un po’ di tempo per accoppiarsi con la console. Per qualche motivo vengono rilevati solo alla fine di un ciclo di rilevamento dei dispositivi. Sii paziente e, se necessario, premi nuovamente il pulsante di sincronizzazione sul controller.
  • Alcuni controller Dualshock4 v1 potrebbero non funzionare con la console. Gli utenti hanno segnalato che i tentativi ripetuti di accoppiamento potrebbero causare la sincronizzazione. Una volta sincronizzati, dovrebbero funzionare come al solito.
  • Il layout dei pulsanti della Xbox One è stato modificato a un certo punto in un aggiornamento del firmware. Assicurati che il firmware del controller sia aggiornato se hai problemi con la mappatura dei pulsanti.

FAQ

Domanda: Funziona su <insert CFW here>?
Risposta: No. MissionControl funzionerà solo con Atmosphère. Questo non è un meschino atto di malizia verso altri Custom Firmware e i loro utenti. Altri semplicemente non forniscono (attualmente) il framework necessario per il funzionamento di questo sysmodule.

Domanda: Questo supporta i controller USB?
Risposta: No. MissionControl per ora è solo Bluetooth.

Domanda: Funziona con sys-con installato?
Risposta: Sì, ho ricevuto diversi rapporti dagli utenti che i due possono essere utilizzati insieme senza problemi.

Domanda: L’installazione di questo ha bloccato la mia console !!!!!11!!1!11
Risposta: No. Se al riavvio della console vengono visualizzati errori relativi al titolo 0100000000000008, quasi certamente stai utilizzando una versione di Atmosphere obsoleta. Installare sempre e comunque la versione più recente e seguire nuovamente le istruzioni di installazione di MissionControl.

Domanda: Come posso usarlo con più configurazioni di avvio di sysNAND/emuMMC?
Risposta: L’accoppiamento dei controller su più installazioni HOS univoche richiede più database di accoppiamento ed è essenzialmente lo stesso dell’accoppiamento con due diverse console. L’unica eccezione è il caso in cui hai accoppiato i controller prima di creare copie di sysNAND. Per ora dovrai riassociare i tuoi controller quando passi avanti e indietro. In futuro spero di includere un’opzione per caricare/memorizzare il database sulla scheda SD per evitare questo problema.

Domanda: Perché i miei controller Joycon/Switch Pro ufficiali hanno smesso di funzionare tramite Bluetooth dopo l’installazione di MissionControl?
Risposta: È possibile accoppiare questi controller tramite le guide Joycon o una connessione USB. In questi casi un ID hardware spazzatura viene archiviato nel database di accoppiamento e il controller non viene identificato. La mancata identificazione di un controller significa che non so come devono essere gestiti i suoi dati di input, quindi lo ignoro. Questo problema può essere risolto disconnettendo fisicamente il controller dalla console, eliminando il database di accoppiamento con l’opzione Impostazioni di sistema-> Controller e sensori-> Disconnetti controller, quindi ricollegando tramite Bluetooth nella schermata Cambia presa / ordine. Questo non dovrebbe più essere un problema con l’ultima versione di MissionControl.

Domanda: Perché il mio controller knockoff di terze parti non funziona?
Risposta: Molti controller di terze parti utilizzano anche ID hardware inutili, rendendoli difficili da identificare in modo affidabile. Se un controller non può essere identificato, lo ignoro, poiché non ho idea di come elaborare i dati in arrivo. Attualmente sto cercando di trovare un modo alternativo per identificarli senza creare problemi altrove. Come sopra.

Domanda: I pulsanti del controller Xbox One non sono mappati correttamente. Puoi aggiustarlo?
Risposta: Non hai letto la sezione Problemi noti e limitazioni, vero? è necessario aggiornare il firmware del controller alla versione più recente. Questa operazione può essere eseguita su Windows utilizzando l’app Accessori Xbox. Puoi anche farlo sulla Xbox stessa.

Domanda: Potete aggiungere il supporto per i controller PS3?
Risposta: È sulla mia lista di cose da esaminare. Il processo di accoppiamento non è standard e potrebbe richiedere modifiche al driver Bluetooth. Se può essere fatto in modo non distruttivo, aggiungerò eventualmente il supporto.

Domanda: Puoi aggiungere il supporto per i controller Xbox 360?
Risposta: No. Questi non usano il Bluetooth. Prova il sys-con con un adattatore USB wireless.

Domanda: Puoi aggiungere il supporto audio Bluetooth?
Risposta: No. Il modulo bluetooth sullo switch implementa solo una piccola serie di servizi necessari per far funzionare i controller nascosti. Di questo piccolo insieme di servizi, solo una manciata di funzioni di alto livello sono esposte al resto del sistema. L’aggiunta del supporto audio richiederebbe l’implementazione dei servizi necessari per il trasporto audio, per i quali qualsiasi persona sana di mente richiederebbe una reimplementazione open source del modulo bluetooth per avere accesso alle funzioni di basso livello richieste per eseguirlo.

Download: MissionControl v0.5.0 beta 5

Download: Source code MissionControl v0.5.0 beta 5

Fonte: gbatemp.net

Articolo precedenteRilasciato Sonic the Hedgehog Forever v1.2.0 per PC Windows x86/x64
Articolo successivo[Scena Switch] Rilasciato NX Activity Log v1.4.0
Sono Nato nel 1980 e da diversi anni coltivo la passione per tutto ciò che riguarda il mondo dei videogiochi, ho vissuto l'era degli home computer con il Commodore 64 e l'Amiga 500, da sempre appassionato di giochi di ruolo e di titoli di avventura.