Projet d'ingénierie inverse. A commencé avec le tapis de course Bowflex Treadmill 22 mais s'est généralisé pour tout appareil Android vendu par Nautilus Inc. (Nautilus, Bowflex, Schwinn).
Cela s’applique principalement au Treadmill 22 & Treadmill 56.
La carte de contrôle du moteur est fabriquée par Electronics Way Industry.
Compte tenu du manuel de service fourni par Nautilus Inc. (sauvegarde sur archive.org) :
Et en se concentrant spécifiquement sur cette partie :
Nous pouvons identifier le “câble de communication” qui connecte le contrôleur du moteur comme étant un connecteur à 5 broches. Il n’y a qu’un seul connecteur à 5 broches. J’ai étiqueté les fils avec leurs couleurs correspondantes (les données & l’interrupteur sont opto-isolés) :
couleur du fil | étiquette |
---|---|
rouge | GND |
blanc | RXD |
noir | TXD |
jaune | +12 |
vert | SW |
La carte n’est pas connectée directement à la console Android.
Le seul connecteur à 5 broches est de la marque Molex. Une recherche Google pour “connecteurs Molex petits” m’a mené à une image de ce qu’ils appellent Molex Micro-Fit 3.0 Single Row (5-Pin)
, qui est utilisé pour connecter la carte de contrôle du moteur :
En regardant dans NautilusLauncher.apk
via jadx-gui
, je peux voir qu’ils communiquent avec la tablette Android avec leur “Console Universelle” en utilisant Série à 230400 Bauds (en utilisant /dev/ttyS4
). Ce n’est PAS ce que nous analysons ici. Cela se réfère à la communication entre Android et la “Console Universelle”. Nous enquêtons sur les comms entre la “Console Universelle” et la “Carte de Contrôle du Moteur”.
Essayer de connecter un ESP32 ou un pont série basé sur CH340 directement aux fils entre la base du tapis de course et la carte de contrôle Bowflex a fait que la base du tapis de course ne s’initialisait pas correctement, donc j’ai commencé à soupçonner qu’ils utilisent RS232.
Note : En se connectant seulement à GND et RXD, nous pouvons “voir” des informations hexadécimales apparemment aléatoires à 9600 bauds. Se connecter à TXD empêche la base du tapis de course de s’initialiser.
— À suivre, j’ai besoin de temps pour jouer avec mon nouvel analyseur logique —
©2022-2024 Sebastián Barrenechea. Tous droits réservés.
Construit avec Astro v4.16.13.