Logo del progetto fl3xbl0w

Controllo del Motore del Tapis Roulant - fl3xbl0w

Pubblicato il 28 mag 2022

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.

Controllore della Scheda di Controllo del Motore B017D

Dato il manuale di servizio fornito da Nautilus Inc. (backup su archive.org):

Schema elettrico del tapis roulant

E focalizzandoci specificamente su questa parte:

Percorso di comunicazione del tapis roulant

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 cavoetichetta
rossoGND
biancoRXD
neroTXD
giallo+12
verdeSW

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:

Connettore Molex Micro-Fit 3.0

Link di AliExpress

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 —

Contenuto tradotto da gpt-4-1106-preview

©2022-2024 Sebastián Barrenechea. Tutti i diritti riservati.

Costruito con Astro v4.15.9.