Gateway Xiaomi: attivare la modalità LAN quando l’app Xiaomi Home non lo consente

4 minuti di lettura
SCOPI DELLA GUIDA:
  • Forzare l’attivazione della modalità LAN (al fine di consentire l’integrazione con HUB personale, per esempio quella con Home Assistant) di un Gateway Xiaomi Mijia per il quale l’app Xiaomi Home non lo consenta
  • Livello di difficoltà: medio
CONCETTI AFFRONTATI:
  • Interfacciamento firmware
Componenti software utilizzate:
  • Putty o software analoghi
Dispositivi fisici utilizzati:
GUIDA MAGGIORMENTE INDICATA PER:

Tutti gli ambienti

Note e disclaimer
  • qualsiasi modifica all'impianto elettrico dev'essere effettuata da personale qualificato
  • qualsiasi modifica attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (la presente guida ha puro scopo didattico)
  • qualsiasi modifica attuata in proprio a un dispositivo ne fa decadere la garanzia.
Revisione guida: 1.0

Abstract

IL Gateway Xiaomi è un dispositivo semplice ma funzionale in grado di fungere da collettore per i dispositivi ZigBee della linea “Xiaomi Smart Home” al fine di permetterne un controllo via Wi-Fi tramite l’app Xiaomi Home. La possibilità di integrare tale Gateway agli HUB personali fa sì che tutti i componenti ad esso collegati siano (in)direttamente gestibili dalla propria domotica personale centralizzata: sensori, attuatori, e chi più ne ha più ne metta.

Per attuare tale integrazione è necessario attivare presso il dispositivo la modalità LAN (“dev mode”), una modalità tale da aprire la porta 9898 UDP/IP presso il Gateway stesso al fine di poterlo controllare direttamente dalla rete locale, e quindi dagli HUB personali le quali integrazioni prevedono appunto di collegarsi direttamente al dispositivo.

Esistono due modelli diversi di Gateway: il Mijia e l’Aqara. Quest’ultimo è compatibile con Apple HomeKit, ma non è possibile integrarlo con Home Assistant (né con altri HUB) in quanto pare non esserci modo di attivare la modalità LAN (“dev mode”) – modalità necessaria a tali integrazioni.

Le due immagini rappresentano il modello Mijia (integrabile) e Aqara (non integrabile): per il primo la modalità LAN è disponibile, per il secondo no.

Il primo, per alcuni, soffre di un problema specifico: se è stato applicato un dato aggiornamento firmware (della quale non riusciamo purtroppo a identificare precisamente la versione) prima dell’attivazione della modalità LAN, essa non sarà più attivabile tramite app Xiaomi Home (vedi per esempio la guida all’integrazione Home Assistant).

Non c’è da disperare: è possibile infatti collegarsi fisicamente al Gateway al fine di eseguire un comando da console il quale provveda all’apertura forzosa della porta 9898 UDP/IP, la quale appunto attiva la tanto agognata modalità LAN.

Questa tecnica è oggetto della presente guida.

Prerequisiti

Trattandosi di una tecnica di connessione fisica al dispositivo è ovviamente necessario un “tramite” fisico che colleghi il nostro computer di appoggio al dispositivo.

A tal fine utilizzeremo l’arcinoto adattatore USB/TTL e relativo cavo di connessione USB (usato abbondantemente per la riprogrammazione firmware di molti componenti domotici e non), nonché dei cavetti di connessione Dupont; infine, un saldatore, necessario per saldare i contatti sulla board del dispositivo.

Infine, è necessario un set di cacciaviti con punta a forchetta (punta a U).

Procedimento

La sequenza è semplice:

  • aprire il dispositivo;
  • saldare i contatti;
  • collegare l’adattatore USB/TTL;
  • installare Putty;
  • accendere il dispositivo;
  • eseguire il comando necessario all’apertura della porta.
Aprire il dispositivo

Aprirlo è facile: è sufficiente capovolgere l’unità e rimuovere i tre tappi bianchi posti sul fondo.Tramite un cacciavite a forchetta (punta U) rimuovere le tre viti presenti nei tre vani.

A questo punto aprire – con molta delicatezza – il dispositivo. Sul dorso è presente lo speaker del dispositivo, il quale è collegato con un cavo bipolare alla board: rimuovere delicatamente il connettore e mettere da parte il pezzo.

Saldare i contatti

Qui viene il difficile: è necessario individuare la piazzola contatti e saldarvi tre fili Dupont (precedentente spellati dal lato che va al dispositivo).

I pin sulla piazzola sono : TX, GND, RX, VCC (da sinistra a destra nella foto); i pin da saldare sono solo TX, GND e RX: il pin VCC (il primo da destra nella foto) non va assolutamente saldato:

Xiaomi Mijia - seriale

Terminata la saldatura è possibile proseguire oltre.

Collegare l’adattatore USB/TTL

A questo punto collegare l’adattatore USB/TTL al computer vi USB e al Gateway tramite i tre contatti saldati, ricordando ancora una volta che il polo VCC non dev’essere per alcun motivo collegato tra l’adattatore USB/TTL e il dispositivo.

N.b. Ricordare di collegare RX a TX e TX a RX.

Installare Putty

A questo punto installare sul computer il software Putty (disponibile per Windows, per macOS e Linux) ed eseguirlo.
Aprire poi una connessione coi seguenti parametri: 115200 8,N,1 e flow control Xon/Xoff.

Accendere il dispositivo

A questo punto alimentare il dispositivo tramite tensione di rete 220v.

ATTENZIONE!! La corrente elettrica non è un gioco. Prestare particolare attenzione a questa fase, decliniamo ogni responsabilità: questa guida ha solo scopo didattico. State attenti a ciò che fate, siate responsabili.

Dopo l’accensione verrà attuato il bootloading (avvio del sistema operativo del Gateway); al termine, premere invio presso Putty.
Apparirà sulla console Putty il carattere “#”.

Eseguire il comando

A questo punto, presso la console Putty, eseguire il seguente comando:

psm-set network.open_pf 3

Successivamente, eseguire il comando di verifica:

psm-get network.open_pf 

Terminata questa fase, spegnere e riaccedere il Gateway. Eseguito nuovamente il bootloading, eseguire il seguente comando:

sudo nmap -Pn -sU IP_DEL_GATEWAY -p 9898

(dove “IP_DEL_GATEWAY” è l’IP assegnato al gateway dal router Wi-Fi) il quale dovrebbe fornire un output simile al seguente:

Starting Nmap 7.40 ( https://nmap.org ) at 1980-01-01 22:20 CET
Nmap scan report for xxxxxx (xxx.xxx.xxx.xxx)
Host is up (0.10s latency).
PORT     STATE SERVICE
9898/udp open  monkeycom
MAC Address: XX:XX:XX:XX:XX (Unknown)

La presenza della stringa “9898/udp open monkeycom” denota l’efficacia della modifica attuata.

Utilizzo

A questo punto è possibile disconnettere il tutto, rimontare il Gateway e utilizzarlo provvedendo ad integrarlo nelle modalità previste presso i vari HUB personali.

Un esempio? L’integrazione con Home Assistant.

🔻 Clicca QUI per commentare l'articolo. 🔻