ELM327技適対応

ELM327互換OBD計測ツールは大概中国品と思われ、当然のように技適マークが付いていません。先日ある方から電波法違反である旨指摘を受けてしまいました。そこで内臓のチップを技適マーク付きのものに取り換えました。これで適法なはず。

ELM327 OBDIIツールの入手

今回は以下のものを入手しました。

ただし、2回買ったら違うものが届いたので、上記リンクのものを買っても本記事と同じものが入手できるとは限らないのであしからず。

ELM327 OBDIIツールの解析

分解すると以下のようになっていました。

真ん中の緑の子基盤に載っているチップがWiFiのチップです。NL6621Mという型番のようです。データシートはこちら。中国語なのかな?読めません・・・・

基盤のピンアサインはテスタで確認したところ以下のようになっていました。

どうやらのチップは無線LANアクセスポイントでありかつtelnetサーバーになっていて、WiFi側とUART側の信号を双方向に送るだけのもののようです。図解すると以下の通り。

通信仕様は以下の通りでした。

無線LAN仕様

  • SSID:WiFi_OBDII
  • Pass:なし
  • 192.168.0.10:35000
  • Receive:CR+LF
  • Transmit:CR

UART Serial仕様

  • BaudRate:38400
  • Receive:CR+LF
  • Transmit:CR

技適対応WiFiチップの準備

wroom-02というのがよさそう。同様にSerial通信の無線化ができ、秋月電子で安価に売っています。

今回はこちらを入手

動作チェック用にブレッドボードに組んだ様子がこちら。

図の下側の基盤はFT232RL USBシリアル変換モジュールで、パソコンにつないでいます。

回路図は以下の通り。

これでパソコンからのシリアル通信でATコマンドで操作でき、透過モードでNL6621Mと同様にWiFiとUART間のデータを相互に送れたのですが、残念な事にTelentサーバー機能と透過モードが同時に使えません。惜しい!

ATコマンドの解説は公式(こちら)が一番詳しかったです。

Arduino IDEでソフト書き換え

WROOM-02は単体でマイコンとして使え、ソフト書き換え可能なようです。参考にしたサイトはこちら。Arduino IDEを利用してソフト作成から書き込みまでできるみたい。

Arduino IDEのインストール

  1. WindowsストアからArduino IDEをインストール
  2. Arduino IDEを起動して「ファイル」-「環境設定」-「追加のボードマネージャのURL」に「http://arduino.esp8266.com/stable/package_esp8266com_index.json」と入力
  3. 「ツール」-「ボード:xxx」-「ボードマネージャー」からESP8266を検索して「インストール」
  4. 「ツール」ー「ボード:xxx」-「Generic ESP8266 module」を選択
  5. 「ツール」-「書き込み装置」-「USBasp」を選択

これでおしまい。

「ファイル」-「スケッチ例」-「01:BASIC」-「Blink」を選び、LED_BUILTINをポート番号(例:12)に書き換えて「スケッチ」-「マイコンボードに書き込む」とするだけで書き込みができちました。感動。しばらく見ない間にマイコン界隈も便利になったものね。

なお、マイコン書き換えの際にはWROOM-02のIO0ピンはGNDに落として起動する必要があります。

NL6621M互換ソフト作成

スケッチ例のWiFiTelnetToSerialに若干手を加えてNL6621M相当の通信ができるよう改造しました。具体的には以下の機能を持たせました。

・SoftAP(ホストが192.168.0.10になるよう設定)

・Telnetサーバー(元のコードのまま)

・透過モード模擬(余計な通信データ表示をしないように削除)

・30分放置されたらスリープ(電源入れっぱなしのミスに対応)

参考にソースコードを載せておきます。

ドングルへの実装

NL6621Mを外してwroom-02を取り付けます。ドングル内に収まるように小型基盤タイプのものを選びました。蓋をして完成です。

0コメント

  • 1000 / 1000