Progetto di ingegneria inversa. È iniziato con il tapis roulant Bowflex Treadmill 22 ma si è poi generalizzato per qualsiasi macchina con Android venduta da Nautilus Inc. (Nautilus, Bowflex, Schwinn).
Questo si applica principalmente al Treadmill 22 & Treadmill 56.
La scheda di controllo del motore è prodotta da Electronics Way Industry.
Dato il manuale di servizio fornito da Nautilus Inc. (backup su archive.org):
E focalizzandoci specificamente su questa parte:
Possiamo identificare il “cavo di comunicazione” che collega il controllore del motore come uno a 5 pin. C’è solo un connettore a 5 pin. Ho etichettato i cavi con i loro colori corrispondenti (i dati & l’interruttore sono optoisolati):
colore del cavo | etichetta |
---|---|
rosso | GND |
bianco | RXD |
nero | TXD |
giallo | +12 |
verde | SW |
La scheda non è collegata direttamente alla console Android.
L’unico connettore a 5 pin è di marca Molex. Una ricerca su Google di “connettori Molex piccoli” mi ha portato a un’immagine di quello che chiamano Molex Micro-Fit 3.0 Single Row (5-Pin)
, che viene utilizzato per collegare la scheda di controllo del motore:
Dando un’occhiata a NautilusLauncher.apk
attraverso jadx-gui
, posso vedere che comunicano con il tablet Android con la loro “Console Universale” usando Serie a 230400 Baud (usando /dev/ttyS4
). Questo NON è ciò che stiamo analizzando qui. Questo si riferisce alla comunicazione tra Android e la “Console Universale”. Stiamo indagando le comms tra la “Console Universale” e la “Scheda di Controllo del Motore”.
Provare a collegare un ESP32 o un ponte seriale basato su CH340 direttamente ai cavi tra la base del tapis roulant e la scheda di controllo Bowflex ha fatto sì che la base del tapis roulant non si inizializzasse correttamente, quindi ho iniziato a sospettare che stessero utilizzando RS232.
Nota: Collegando solo a GND e RXD, possiamo “vedere” alcune informazioni esadecimali apparentemente senza senso a 9600 baud. Collegare a TXD impedisce l’inizializzazione della base del tapis roulant.
— Continuerà, ho bisogno di un po’ di tempo per giocare con il mio nuovo analizzatore logico —
©2022-2024 Sebastián Barrenechea. Tutti i diritti riservati.
Costruito con Astro v4.16.13.