はじめに
WiFiルータのデバッグ用にUART変換器が必要に必要になったので、AliExpressで安かったやつを買いました。一つ80円くらいでした。5つか4つまとめて買いました。
マイクロコントローラーpl2303hxモジュール,usbからttlへのマイクロコントローラーstcラインのダウンロード,9つのアップグレードのプログラミングユニット,送料無料
改造前の症状
起動しなくなる
Bufflo WZR-600DHP3やWZR-1750DHP2に接続すると、起動しなくなります。起動してからUARTを挿せば問題はありませんが、電源投入前から接続していると起動しません。
文字化けする・入力した文字が映らない
文字化けしたり、コンソールに文字を打っても映らないことがあります。エンターキーを押すと、実行はされるので送れてはいるようですが… また、カーソルの位置がズレて文字の入力が変になったりいろいろとおかしなことになります。
1.電圧レベルの変更
まず初めに、電圧レベルの確認をします。このUSB-TTL USB-STC-ISPはチップ表面が削られて型番が確認できませんが、Prolific製のPL-2303(のパチモノだと思われ)を使用しています。データシートを確認すると、4番ピンに加える電圧がUARTの電圧レベルになるようです。
テスターで実際に測ってみると5Vに繋がってました。多くの場合、UARTは3.3Vなので使い物になりません。ってことで改造します。
4番ピンを少し浮かせて、カプトンテープを基板との間に貼って絶縁し、17番ピンの3.3V出力と接続しました。
これで、電圧レベルは3.3Vになりました。電圧レベルが揃ったことにより、文字化けが起きなくなりました。ただ、依然として起動しない問題が残っています。
2.プルダウン
起動しない問題についてインターネットで調べていると、マイクロテクニカ製品サポートFAQ「UART端子にホスト機器を接続した状態でEP-DS1700の電源を投入すると動作が不安定になる」というものが見つかりました。このサイトを要約すると、RXに加わる電圧が原因でCPUの初期化が変になる的な感じなので、今回はTX(ルータ側)が悪さをしているので、変換器のRXをプルダウンします。
ページにあるように1kΩの抵抗をRXとGNDの間に付けたところ、正常に起動するようになりました。
先程の写真の下2つには余計な抵抗とダイオードが付いていますが、これはレベル変換回路(こちらのサイトを参考)を取り付けてあるだけで動作には全く関係ありません。
3.ズレる問題
カーソルの位置がズレたり、改行位置がズレたりと、いう問題は今回は修理できませんでした。同期周りがおかしくなっていると思うので、水晶発信子の精度が悪くて、ずれてしまっているのかなーと考えています。オシロスコープでRXとTXを観察したところこんな感じでした。
今度秋葉原に行く機会があったら、水晶発信子(12MHz)を買ってみようと思います。
おわりに
「安物買いの銭失い」、「安かろう悪かろうと」といった感じでAliExpressだなーと感じました。電圧レベルが違うのはあるあるなのでいいですが、他の2つ(プルダウン、ズレる問題)は製品ならしっかりして欲しいです。秋月で水晶発信子を買いたいところですが、30円もするので、なんかなーって感じです。