Tutorial - Forscan sur MacOS

FoLuxo

Silence, on roule !
Membre du personnel
30/6/14
7 809
6 793
113
Luxembourg
Forscan est une application qui tourne sous Windows et mobiles et qui permet de se connecter aux différents calculateurs des voitures Ford. Forscan est plus puissant que les applications OBD2 classiques parce qu'en plus des commandes génériques il permet la communication dans le protocole propriétaire Ford et donne donc accès à beaucoup plus de choses, y compris des modifications de fonctionnalités.

Forscan nécesite un câble de connexion. Il y a les connus et reconnus, fiables et plus chers, comme le OBDLink EX par exemple, et il y a les versions pas chères, à base de ELM327 bidouillé, qui ne peut qu’accéder qu’à un bus à la fois (high speed ou medium speed). On passe de l'un à l'autre grâce à un bouton physique qui modifie le câblage à la volée. Ce genre de module est appelé "HS/MS" pour indiquer qu'ils peuvent commuter entre les deux modes. J'ai utilisé un module VINT-TT55501 disponible pour environ 10€. Ce module comporte un chipset (qui permet d'émuler un port série à travers un port USB) de type CH340 - info utile pour récupérer les bons drivers.

Le site officiel de Forscan et le forum associé sont le point de départ. Il y a beaucoup de tutos en ligne pour faire fonctionner tout ça sous Windows, mon objectif est de décrire comment faire fonctionner le truc sous MacOS.

Je ne mets que les instructions dans les grandes lignes, si quelqu'un veut plus de détails on peut développer. Les instructions suivantes fonctionnent sous MacOS High Sierra et Mojave.

Il y a en gros deux méthodes :
- émulation légère avec Crossover
- machine virtuelle avec VMware et installation complète de Windows

Dans les deux cas, il faut commencer par faire reconnaître le module par MacOS et repérer le nom du module :
Dans mon cas :
ELM327 MacOS.png

==> la valeur qui nous intéresse ici est tty.wchusbserial1410

A partir de là on a deux choix possibles :

Méthode 1 : avec Crossover, qui émule Windows sous Mac, et permet de faire tourner des applications Windows sans avoir à installer Windows lui-même

Je préfère cette méthode parce que j'utilise déjà Crossover pour une autre application, et parce que c'est beaucoup plus rapide et léger à lancer qu'une machine virtuelle.
cd ~/Library/Application\ Support/CrossOver/Bottles/(bottle-name)/dosdevices
ln -s /dev/(nom du module reperé au-dessus) com1

  • si on a Crossover version 17 ou plus, il faut ajouter dans la base de registres le lien entre port COM et module tel que vu par MacOS ; cf. instructions QUI COMPORTENT UNE ERREUR sur https://www.codeweavers.com/support/wiki/mac/mactutorial/usbtoserial2. L'erreur est qu'il faut taper com1 en minuscules, pas avec une majuscule au début comme ils indiquent dans le texte...
  • dans les deux cas, on configure Crossover pour utiliser le port COM en automatique
Parametres Crossover.png
  • si tout s'est bien passé, lors de la connexion à la voiture Forscan détecte le module :
Connexion OK sous Crossover.png


Méthode 2 : avec VMware, qui crée une machine virtuelle dans laquelle on installe Windows et Forscan

Préférences de la machine virtuelle.png
  • installer dans la machine virtuelle le driver du module ELM327, dans mon cas depuis http://www.bbflyobd.com/download.html
  • si tout s'est bien passé, en branchant le module au Mac avec la machine virtuelle qui tourne, il est détecté et apparaît dans le Gestionnaire de périphériques de Windows - on y voit également le numéro du port série attribué (COM3 pour moi)
Device manager.png
  • installer Forscan dans la machine virtuelle et paramétrer la connexion
Forscan settings.png

  • la connexion doit fonctionner
Log connexion.png
 
Dernière édition:
  • Like
Reactions: Grigou
Même tuto pour un OBDLink EX, sous MacOS Mojave (10.14) :

- installer les drivers depuis https://ftdichip.com/drivers/vcp-drivers/ (dans mon cas la version 2.4.4 pour Mac)
- une fois le driver installé, brancher l'OBDLink et vérifier avec Terminal le nom du device détecté, dans mon cas "/dev/tty.usbserial-00001014"
- pour la Méthode 1, avec regedit, il faut donc définir le port com1 avec comme valeur /dev/tty.usbserial-00001014
- petite particularité, j'ai du en plus donner tous les droits à tous les utilisateurs du système sur un répertoire particulier : dans terminal, "sudo chmod 777 /var/spool/uucp/"

Résultat :

Capture d’écran 2021-03-16 à 20.38.44.png

Si le module n'est toujours pas détecté, cocher le mode Démo, faire une connexion bidon, puis décocher la case Démo.