elm327 BT / Android

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
Bonjour,
j'ouvre cette discussion pour centraliser les échanges à propos de l'interface ELM327 Bluetooth et des dev sous android.

Pour commencer:
j'ai testé ce matin cette interface
d'abord avec le pgm de diag fourni avec.
j'ai commencé à 9600 bauds , puis 38400 puis 115200:


eobd.JPG


J'ai ensuite testé l'interface avec torque sur archos101.
c'est tout bon.

Etapes suivante avant d'attaquer android:
1) tests avec realterm de façon à forcer en permanent la vitesse interne de communication à 115200.
2) un petit dev en VB6 de façon à valider l'algo et vérifier la vitesse d'échantillonnage accessible (objectif Noel).


3)
android_logo.gif



@ suivre
 

parkerbol

Participant hyperactif
Inscrit
9 Janv. 2010
messages
1,789
Score de réaction
453
Localisation
Seine et Marne
Véhicule
Prius 2 2006 sol pack MC
Le débit théorique du bluetooth est de 1Mbps. J'ai fait tourner des walkabout BT de centre de contrôle technique en 230400 au lieu de 115200 parce que les dictionnaires (textes du rapport) étaient super longs à récupérer.
As tu essayé de forcer au delà ?

J'ai pris un modèle légèrement différent du tien, car en y réfléchissant, il faut mieux avoir quelques modèles différents, histoire d'avoir le maximum de compatibilité avec nos téléphones ou tablettes, eux aussi différents ! C'est une boîte française aussi.

On pourra donner ainsi des matrices de compatibilité.

Je vais commencer la semaine prochaine quelques tests android<->bt, vu que ça se calme au niveau projets ici.
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
Bonjour,
Ce matin, j'ai procédé à qqs tests avec l'elm327.
d'abord, j'ai tenté d'utiliser realterm sans succès;
je me suis rabattu sur le mode console de l'outil livré avec l'interface.

j'ai constaté que l'elm327 gère nativement le multiframe, càd que si on demande 2101 il nous répond (dans le désordre...):
7EA10186101511D3B2B
7E8101B610151002501
7E821481D3B625B13D9
7EA21655B138000011A
7E82200011A002B7C2B
7E823FF57D38FEC395F
7EA222B2951FF57D88F
7EA23DC38EAAC000000

une fois reclassé (tri sur 5 1ers octets), on a :

7E8101B610151002501
7E821481D3B625B13D9
7E82200011A002B7C2B
7E823FF57D38FEC395F
7EA10186101511D3B2B
7EA21655B138000011A
7EA222B2951FF57D88F
7EA23DC38EAAC000000

cela s'interprete de la manière suivante:
toutes les ECU qui comprennent cette demande y répondent
7E8 répond:
10 1B msg multiframe de 1Bh octets ===> 26 = 27 - 1 octets de data
61 01 réponse à 21 01
suivi de 26 octets 5 + 3*7 octets

7EA répond:
10 18 msg multiframe de 18h octets = 23 = 24 - 1 octets de data
61 01 réponse à 21 01
suivi de 25 octets utiles
5 + 7 + 7 + 4

les octets 21 22 23 en pos 4 sont des N° de séquence

dans le cas d'une réponse monoframe, en position 4,5, on a le nb d'octets de la réponse

la séquence complète de mes tests est la suivante:
2101
7EA10186101511D3B2B
7E8101B610151002501
7E821481D3B625B13D9
7EA21655B138000011A
7E82200011A002B7C2B
7E823FF57D38FEC395F
7EA222B2951FF57D88F
7EA23DC38EAAC000000
213C
7EA037F2112
7E807613C0BC60A1A80
2149
7E8100E614900063480
7E8211165771D0007F9
7E82202000000000000
7EA037F2112
2161
7E8037F2112
7EA0761613D3C3D91DC
2162
7E8037F2112
7EA0761623838387FFD
2167
7EA0761678000800402
7E8037F2112
2168
7E8037F2112
7EA0761687FD77FDA00
2170
7E8037F2112
7EA06617037373D00
2171
7E8037F2112
7EA06617138383900
2174
7E8037F2112
7EA100B61743738383D
7EA210001D401D50000
2187
7E8037F2112
7EA100A61873CEB4300
7EA21448042BA000000
218A
7E8037F2112
7EA04618A80F4
2198
7E8037F2112
7EA100A61987E1C58A3
7EA2100808780000000
2187
7E8037F2112
7EA100A61873CC7431E
7EA21449E42BA000000

rappel de la séquence d'initialisation de l'ELM327:
AT I 'pour s'assurer qu'il répond
AT SP6 ' set the OBD protocol to CAN 11-bit
AT E0 ' turn "echo" off
AT H1 ' enable full headers (so we can tell which PID sent the message!)
AT L1 ' enable linefeeds (used to help parsing results) facultatif
AT S1 'facultatif printing of spaces


le test précédent concerne la P3, mais le principe est valide pour P2
 

parkerbol

Participant hyperactif
Inscrit
9 Janv. 2010
messages
1,789
Score de réaction
453
Localisation
Seine et Marne
Véhicule
Prius 2 2006 sol pack MC

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
je te prépare une synthèse pour la P2 à partir de la feuille excel en question.

les 2 pdfs que tu mentionne constitue la bible de l'elm327....
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
exemple avec info de l'onglet HV_ECU_CAN
1 ère requète

s'effectue avec simplement 21 C3

réponse automatique du type:
7ea102761c3xxxxxxxx
7ea21xxxxxxxxxxxxxx
7ea22xxxxxxxxxxxxxx
7ea23xxxxxxxxxxxxxx
7ea24xxxxxxxxxxxxxx
7ea25xx000000000000

où les xx vont par paire et représente les octets significatifs de la réponse

interprétation de la requête:
7e2 ECU destinatrice
2 nb d'octets de la requête
21 c3: la requête

le 7e2 30 (pour demander la suite) n'est pas utile dans le cas de l'elm327
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
bonjour,

Loïck rejoint ce forum

pour tout savoir de Loïck, c'est ici.
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
exemple de la demande de température pot catalytique:

la requète est 013C (ou 013E)
la température en °C est dans les 2 derniers octets
si on les appelle A & B, la formule est :
(A * 256 + B) / 10 - 40

en bas de la fenêtre, on constate l' effet de la commande AT S1 qui insère des espace entre les groupes, rendant plus lisible le message

14d0b2b22aa775.jpg
 

parkerbol

Participant hyperactif
Inscrit
9 Janv. 2010
messages
1,789
Score de réaction
453
Localisation
Seine et Marne
Véhicule
Prius 2 2006 sol pack MC
J'ai testé le dongle bluetooth elm327 avec Torque ce matin, ça fonctionne assez bien du premier coup et assez vite.
Maintenant, je vais m'atteler à voir ça en mode console sur android.



Bienvenue Loïc ;)
 

guinness

Participant hyperactif
Inscrit
23 Juil. 2009
messages
510
Score de réaction
126
Localisation
Ile de France
Véhicule
Prius3 et Nissan Leaf
et la PIII dans tout ça?

Tout d'abord, bonjour à tous!
Je ne m'y connais pas du tout en bus CAN mais venant d'un cursus réseaux/télécoms je pense pouvoir m'adapter rapidement (je ne m'étais jamais vraiment intéressé aux voitures avant la Prius!).
Je développe maintenant surtout en Java (partie serveur) ou actionscript (partie graphique en Flash/AIR) mais je dois pouvoir me débrouiller en VB, C# (ou autre ObjectiveC ou C++ sous la menace :-D).
En bref, m'avoir ouvert accès à ce salon va peut-être me pousser à investir dans une interface BT/OBD2 et franchir le côté obscur de la Prius :-D, où as-tu acheté ton Dongle Parkerbol?

Donc voilà, s'il vous faut un volontaire pour adapter vos devs actuels sur la PIII* (et sur des tels Android plutôt que des Archos), je peux peut-être être votre homme (je dois pouvoir récupérer pas mal d'infos spécifiques PIII sur pc.com).
:jap:
Bienvenue à Loïck aussi!
-----
*: Bon je viens de tilter que priusfan avait déjà adapté PCM sur la PIII, je viens d'avoir accès au salon, il me reste de la lecture!!!
 
Dernière édition:

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
Bonsoir guinness, et bienvenue à bord.

A ma connaissance, 95% des infos CAN sur la p3 proviennent d'un certain frenchie, elles ont été adaptées pour le scangauge par des correspondants que j' ai là_bas (sur pc.com).

Le frenchie en question, c'est myself, et effectivement j'ai procédé à des analyses intéressantes.

Je te propose de commencer par utiliser torque et lire les trucs ci-dessus.
 

planétaire

Participant hyperactif
Inscrit
4 Fév. 2008
messages
8,814
Score de réaction
4,915
Localisation
Caldera d'Ecouves
Véhicule
Prius 2 plugin 13,5 kWh Full Li
...Le frenchie en question, c'est myself, et effectivement j'ai procédé à des analyses intéressantes....

Mince, c'est plus un secret.

Bienvenue à Parkerbol et Guinness. :jap:

Si vous avez besoin d'infos sur la meilleure des Prius :-D, c'est à dire la 2 nhésitez pas. Mais après avoir digéré tout le salon canmonitor :grin:

En tout cas vos dev vont élargir l'éventail des utilisateurs potentiels. :ovation:

@Guinness, pour ma part je n'avais jamais développé en vb6 ni géré un elm327 pas plus un tactrix. Tout s'apprend.
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
Test de communication satisfaisant depuis téléphone vers interface en utilisant le programme blueterm du market.

Dans le lien ci-dessus, on peut récupérer l'appli et son source.

cela permet de ne pas réinventer l'eau tiède en ce qui concerne la couche de communication.
 

parkerbol

Participant hyperactif
Inscrit
9 Janv. 2010
messages
1,789
Score de réaction
453
Localisation
Seine et Marne
Véhicule
Prius 2 2006 sol pack MC
Tiens j'avais aussi commencé par BluetoothChat :cool:
 

guinness

Participant hyperactif
Inscrit
23 Juil. 2009
messages
510
Score de réaction
126
Localisation
Ile de France
Véhicule
Prius3 et Nissan Leaf
Merci, c'est noté. Je pense faire le pas quand j'aurai un peu de temps...
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h
j'ai commencé à jouer au jeu des 7 erreurs entre bluetoothchat et blueterm.
btCHAT ne marche pas, btTERM marche.


pour me faciliter la tache, j'ai utilisé examdiff.

je pense que je vais modifier BluetoothChatService.java en virant tout ce qui concerne AcceptThread
et la ref à:
import android.bluetooth.BluetoothServerSocket;

mon objectif est de récupérer un module de comm SPP en dentbleue.

@ suivre

ps , comme j'ai un énorme rhume, les neurones bougent au ralenti...
 

Prius56

Membre Honoraire
Prius Touring Club
Inscrit
28 Oct. 2005
messages
2,094
Score de réaction
357
Localisation
Bretagne Golfe du Morbihan
Véhicule
Yaris Hybride DynamicPrius 3 Plug in 1F7 &quot;Lounge &quot;
:coucou: Bonjour,

@Priusfan: À tes souhaits, Xavier !:fete:
 

priusfan

darwiniste
Prius Touring Club
Inscrit
22 Oct. 2005
messages
6,519
Score de réaction
9,395
Localisation
conflans ste honorine
Véhicule
UX250h, Pijot iOn, ex Rav4h



ci-joint une démo de connection avec blueterm surmon tel.

on y voit fort bien l'effet de la cde AT H1 (pour montrer le header)

j'avais bidouillé bluechat comme prévu, càd :
1) viré toute la partie server puisque le server, c'est le dongle.
2) surtout modifié le uuid pour en mettre un qui soit prévu pour le SPP (celui de blueterm marche).
résultats: connection ok, mais les communications semblent envoyées par petits bouts; exemple (100% reproductible):
je tente d'envoyer ati
il reçoit
at
puis i
 
Pages vues depuis le 20 Oct 2005: 283,429,606
Haut Bas