Ethernet-UART ブリッジIC CH9120 をなんとなく使う

No Image

ESP32のEthernetゲートウェイには、WCHのCH9120という Ethernet - UART ブリッジIC を使っています。

シンプルなICで使いやすそうだなと思って採用したのですが、ドキュメントはほとんどありません。
中国語のデータシートか、採用されているモジュールから読み取るしかありません。
これは使いやすいのかどうなのか、と自分の中でもやもやしているので記事を通してもうちょっと噛み砕こうと思います。

スポンサーリンク

前説

LANTRONIX Xport

会社で使っている機器に搭載されていて、こういうのいいなーと思っていたんですが、調べてみると超高額商品で諦めました。

1万円超えはさすがに趣味では組み込めませんて...
今では中華製の似たような商品も出ているのでそっちならいけそうですけどね。

WCH CH9121

じゃあICで似たようなものがないのかと探していたら、見つけたのはCH9121というICでした。

数年前に回路まで設計していたのですが、基板を設計する段階で面倒に感じてやめました。
というのもレギュレータが電源の3.3V以外に1.8Vが必要です。
また、チップ自体が大きく(LQFP-64)なぜか2ポートも使えるということもあって持て余している感はありました。

CH9120の周辺回路

CH9120は不親切でデータシートに回路例が載っていません。
CH9121はちゃんと載っているのに不思議です。
なので、データシートをちゃんと読みつつネット上にある回路図を参考にしていきます。
RJ45はパルストランス内蔵のものを使うとシンプルでいいですよ。

CH9120周辺回路
CH9120の周辺回路はCH9121と比較してもシンプルになっています。
差動ペアのTX(PN)/RX(PN)ラインには50Ω程度のプルアップは不要になりました。
また、電源は3.3Vのみで1.8Vを作る必要はありません。

スポンサーリンク

RXD/TXDはマイコンのUARTとつないで、RUNやTCPCS、CFGENは状態出力なので繋いでも繋がなくても大丈夫です。
RESETピンをローレベルで3秒保持するとファクトリーリセットができます。
CFG0をローレベルにするとUARTからネットワークの設定ができるモードに入ります、このあたりは後で説明します。
通信にRS485を使うならRS485DIRが方向制御出力になっていますのでEthrnet-RS485ブリッジがマイコン無しで簡単に作れますね。

CH9120のネットワーク設定

CH9120のネットワーク設定はEthernetポート経由でアプリケーションで設定するか、シリアル通信で設定するかの2つの方法があります。

アプリケーションで設定する

簡単なのはアプリケーションで設定する方法です。
これにはNetModuleConfig.exeというアプリケーションを使います。
NetModuleConfig.exeはデータシートになんの脈絡もなしに「これを使えばいいよ」と書いているのにどこからダウンロードできるのか書かれていません...
正規のアプリケーションの所在は不明なので適当に検索して出てきたものをダウンロードして使います。
今はWaveshareからRP2040と一体型のモジュールが出ているので、そのサイトからダウンロードするのが無難かもしれません。

Network configuration tool をクリックするとダウンロードできます。
使用方法は簡単で、CH9120のデフォルトIPアドレスが 192.168.1.200 なのでそこと設定用PCが接続できるようにして[Search]を押します。
ちゃんと接続できていればリストに出てくるはずなので、選択してネットワークの設定をしていきます。
私は最初、なかなかリストに出てこなかったので壊れているのではと思ってドキドキしました...
PC側のネットワーク設定が悪かっただけみたいでした。

シリアル通信で設定する

もう1つの方法であるCFG0をローレベルにしてからシリアルで設定する方法ですが、こちらはコマンドが1つもデータシートに載っていないという超不親切な設定方法です。
これもWaveshareがコマンドセットを公開しているので、それを理解すれば設定できそうですが...

PCから設定できる環境であれば、わざわざUARTでマイコンから設定する必要もないのかなと思っています。
セキュリティ等の関係で、LAN側からの設定が憚られてどうしても必要に迫られるのであればちゃんとコマンドを理解する必要が出てきます。

ライブラリは誰も作ってなさそうですしね...
RP2040用はあるので比較的簡単には作れそうな感じはしています。

Ethernet-UART ブリッジIC CH9120 をなんとなく使う

スポンサーリンク

Leave a Comment