ページ

2014/12/18

wr250r ECU-メーター間通信

しばらくedisonをいじっていたのだけど、飽きた。
node.jsでLEDを点灯させたり、シリアルカメラを接続したり
していたのだけれどどうも自分の使用目的に合わない。
そのうち使い道もでてくるだろうからその時まで放置決定。

オークションでWRのECUを激安で落札したので前からやりたかった
ECU-メーター間通信の解析でも始めることにした。
リアルバイクまでPCやロジアナを持っていくのは面倒で寒いので
各種センサの偽信号を作ってECUとメーターだけで机上で
動作するようにする。

海外のフォーラムでヤマハのFI診断装置の信号を解析していて
そこの情報を元にこちらも解析を進めていきます。


ECUのコネクタは1000円程度で売っているけれどピンが
5000本単位でしか売っていないのでICソケットを二段重ねで
代用する。これでもしっかり刺さるので解析程度には十分だ。

水温、速度など各センサはサービスマニュアルの数値を元に
一個ずつでっちあげる。 一番苦労したのがクランクポジションセンサの
信号で、きっちり正負に振れる信号を与えないとエラーが出る。
色々試行錯誤した挙句、PICからの出力を600Ωの小信号トランスに
突っ込んだところ、きちんと認識してくれた。
フライホイールの突起は11個で突起一個分が歯抜けになっている。
これを模した信号をPICから出してやればOKだ。

とりあえず、エンジンがかかった状態を再現することに成功。
エンジン回転数、速度、水温情報がコンスタントにやりとりされているので
これを傍受したらタコメーターや水温計をとてもスマートなやり方で
取り付けできる。

CO調整なども解析したら完全オリジナルのメーターが作れそうだけど
なんか猛烈に面倒くさそうだ。
でも、CO調整が簡単にできて、回転数も水温も常時表示して
速度計のズレも簡単に補正できて燃料計も内蔵した
メーターがあったらとても便利そうなので一応データだけはとっておく。



以下、メモ

通信速度は15625bps
信号は12V-0VのK-line とかいうもの。
メーターから0x01のコマンドを送るとECU側が5バイトの返事をする。
データは順に、回転数、速度、エラー、水温、チェックサム

最新の投稿

Starfield をやってた

 スターフィールドが発売されたので最初の一周をやってみた。 メインクエストやその周辺のクエストはすごく面白いが埋め草でやる自動生成のイベントが数回やったらすぐ飽きる残念な感じだ。売りの惑星探検も使いまわしを発見するとやる気が萎えてしまう。  スターフィールドで一番楽しいのは宇宙船...