[SH5A フォレスター] インフォメーションメータのプロトコル解析

Submitted byshin on火, 2009-02-03 18:39
G-SSM: Video 等の強力な助っ人を入手して、
プロトコル解析が少しづつ進みそうなので、パケットの解析結果を別エントリに独立させることにした

[20100117追記]
SH5A限定情報です。

 ■通信仕様
  2400bps, データ長:8bit, パリティ:even, STOPビット:1bit
  毎秒10パケット位
  0‥12V
  ※インフォメーションメータをつけたままだと上のプロトコルで受信できるんだけど、
   メータを外すと通信できなくなる。どうも、本体側はHIGH⇒一旦HighZ、インフォメーション側が
   HiGHを認識したらHIGHをドライブ、本体側はHIGHドライブを確認してから通信という手順がある様子
   このやり取りが、バイト単位なのかパケット単位なのかは不明なんだけど、まぁともかく、通信線をACCで
   pullup(現在転がっていた12KΩを利用中)すると受信ができる様になった
   ちなみに、他のブログで、フォレスターのインフォメーションメーターとレガシーのインフォメーションメーター
   を並列に接続して動作している報告があるので、このハンドシェイクプロトコルは余り意味を持っていない
   (時間的には十分余裕があるのでハンドシェイクでなくても動作する)のかもしれない。
  ※数秒通信が途切れるとインフォメーション側は時計以外の表示を消すようになっている

 ■パケット仕様
  9byte固定長パケット
  
ID 情報 備考
PK0 外気温
(PK0-0x50)/2℃
・インフォメーションメータは小数点以下切り上げ
・キーON時は0xFE/ACC時は外気温
・表示は★℃(★)?★℃(★)(レガシィの説明書は-30℃(0x14)‥50℃(0xB4))
PK1 イルミネーション照度
0x00(最低輝度)
?0xFA(最高輝度)
・イルミネーションコントロールダイヤルで調整した照度
 6段階の離散値‥なんだけど可変抵抗の固定位置を規定しいるだけなので揺らぐ
 ex. (暗)00,21,{52,51},{7F,7D},{AF,AD},FA,FA(明)
・TOP2つは同じ値になっていて、通常と最高(減光キャンセル)はPK6[0]で区別
PK2 瞬間燃費
PK2/10 Km/L
・フォレスターでは表示されない
・G-SSMの値は、これより2倍ちょっと大きめの値になる
・G-SSMと比較して時定数が異様に長くて瞬間燃費っぽくない
・表示は0.0Km/L‥★Km/L
PK3 A区間燃費
PK3/10 Km/L
・リセット後1kmの間は0x00
・表示は0.0Km/L‥★Km/L
PK4 B区間燃費
PK4/10 Km/L
・リセット後1kmの間は0x00
・表示は0.0Km/L?‥Km/L
PK5 走行可能距離
PK5*10 Km
PK6 状態ビット(1)
0x00,0x01
bit7:0固定?
bit6:0固定?
bit5:0固定?
bit4:0固定?
bit3:0固定?
bit2:0固定?
bit1:0固定?
bit0:1=イルミネーションが通常&スモールON
PK7 状態ビット(2)
0x01,0x09,0x81,0x89
bit7:1=B区間表示, 0=A区間orOD表示
bit6:0固定?
bit5:0固定?
bit4:1=運転席ドアオープン, 0=クローズ
bit3:1=エンジンON
bit2:0固定?
bit1:0固定?
bit0:1=キーON, 0=ACC
PK8 チェックサム
ΣPKi mod 0x100