リビングサーバのPCケースは2006年から使っている3R SYSTEMのHT-1100。
これについていたVFDをLCDに交換し、Win11で表示できるようにした話です。
PCケースにディスプレイ?
思い出話です。
時代がXPから7に移る頃、「ホームシアターの中心にPCを使う」というトレンドがありました。2005年から2010年くらいの話です。
そのためにオーディオに似せた横置きのデスクトップケースが多数発売されています。
その中でも一部の高級品には、BDプレイヤーの様に小さなディスプレイがついていました。
そこに使われていた表示装置がVFDです。
VFDはかつて多くの電化製品に使われていましたが、今はOLEDや液晶などに置き換わり激減。しかし今でもニキシー管と同じレトロデバイスとして、ごくごく一部の人に人気があります。
自分も少し前にVFDを使ったスペアナを買いました。
我が家のHT-1100にも16文字x2列表示のキャラクタ(文字)表示のVFDがついていました。
しかしコントローラ部分が不調になった他、ツールのサポートも止まりOSからコントロール不可に。
それ以来VFDは取り外してパーツ箱行き。
今回はAliexpressで使えそうなパーツを発見。VFDの復活に挑戦したわけです。
LCD2USB USB 16X2 Character LCD Module Display
買ったのはパラレルポート接続のキャラクタ=文字専用LCDをUSBに変換するコントローラ。
16×2文字のLCDはオマケです。100円ちょっとしか変わらないので。
1,238円に送料670円。
製造メーカー専売らしく送料無料の出品はありません。
7/22にオーダーして8/9に受け取り。
発売・製造しているSURENOO Official StoreはこのようなLCDや、ラズパイに接続する小型TFT LCDを専門に作っているようです。
商品をチェック
ケースもマニュアルもなく、プチプチにくるまれて届きました。
表側は一般的な16×2 LCDです。
オーソドックスなHD44780 compatible製品。
裏面にはお目当ての品、USB-LCDコントローラがはんだ付けされていました。
液晶付きにしたら、余計な手間が増えてしまった・・・。
一列のハンダを一気に温める道具がないため、ノコギリでゴリゴリと分離。
USBはMini(!?)USBコネクタと4PinのUSBヘッダピンがあります。
LCDパターンは1列用が2つ(表実装用、裏実装用)と2列用があり、どのピンアサインでも直結できるように配慮されています。
USB-LCDコントローラ
USB-LCDコントローラの詳細は単体販売ページにあります。
メーカーサイトには設定方法も書かれたデータシートが公開されています。
セットアップ
USB-LCDコントローラの認識
データシートには何か媒体が付属するように書かれています。しかし 何もついてきません!
挿しただけではデバイスマネージャで!がついたまま。
調べるとlibwdiというライブラリにある、zadigというツールでドライバインストールできる様です。
libwdi – Browse /zadig at SourceForge.net
最新(10年前)のzadig_v2.0.1.160.7zをダウンロードして実行します。
対象のドライバをリストから選び、[Driver]を”libusb-win32(v1.2.6.0)”に合わせ、[Install]を押します。
デバイスマネージャにlibusb-win32 devicesというツリーが表示されれば準備完了。
LCD Smarite
表示データを作るアプリは超なつかしのLCD Smartieを使います。生きとったんかワレ!
徒労日記最古の記事にも登場する、おそらくWindows98時代からあるLCD表示ツールです。
重要なのは、USB2LCDドライバが含まれている LCD Smartie v5.4.2.92 Beta+をダウンロードすること。
他のバージョンにはLCD2USBのドライバが含まれません。
InpOutx32を入れる
LCDSmartieは古いアプリのため、そのままでは動かないそうな。
アプリが使用するDLLを64bitに対応させるInpOut32 and InpOutx64をインストールします。
Binaries only – x86 & x64 DLLs and libs. (Mirror)
からダウンロードし、入っているInstallDriver.exeを実行。
DLLの手動コピーは不要でした。
※この手順は試行錯誤の中実行したため、要否不明です。
点灯
LCD Smartieの設定
LCD Smartieを起動するとメインウィンドウが開きます。
WinXP感漂うデザインですね。
中央部はLCDに表示される内容がそのまま表示されます。
- 左下の”Setup”->[Screen]タブにある[Plugin]タブを開く。
- ”lcd2usbv0.dll”を選択(lcd2usbv1.dllでは動作しませんでした)。
- [Screen]タブの”LCD Size”を16×2に設定。
コントラストを左から1/4くらいまで下げる - [OK]を押した後、一度LCDSmartieを閉じる(ウィンドウ右下のLCDアイコンを右クリック)。
再度立ち上げれば、LCDにメインウィンドウと同じ文字列が表示されます。
表示内容のカスタムはクセがありますが、慣れれば簡単。
中央下部のフォームが表示内容のテンプレート。左半分のリストから項目を選んで[Insert]を押すと変数が入ります。
Applyするとそれが実際の値になってLCDに即反映される仕組み。
テンプレートは複数作って秒数ごとに切り替えられる他、センタリング・スクロールもできたりと設定は多彩。
VFD動かず
期待のVFDを点けた結果・・・文字化け。
データシートからピンアサインも確認したのに。
推察ですが、接続するパラレルポートのピン数の違いと思っています。
VFDはSamsungの16T202DA1E。データシートによると入力は8bit幅です。対するUSB-LCDコントローラは4bitのみの対応。お互いモードの変更はできません。
HD44780自体は4も8も切り替えられるけれど、今回のは噛み合わなかったなぁという結論です。
PCでVFDを表示できる貴重なパーツだったのに残念。
VFDは諦めてLCDをケースに装着
VFDを諦め、わざわざ切り離したLCDに戻す事にしました。
今後を考えてピンソケットでUSB-LCDコントローラと接続してあります。
ケースにはネジ1点止め+両面テープでどうにか固定しました。
M/B上の余っているUSBピンヘッダから4本を引き伸ばし、USB-LCDコントローラに接続します。
実際に表示しているとこんな感じ。
本来はVFDの文字のみが浮き上がるため気になりませんでしたが、LCDだとバックライトで幅不足がまるわかり。
120mmの窓なのにLCDが65mmしかありません。
今度は自光式の横長OLEDパネルを探してみようかと思っています。
また、LCD Smartieの表示内容も今や寂しいもの。
昔はケースファンの回転数や各部温度を表示できました。今はハードウェアが変わりすぎたためそもそも認識できません。
これ以上凝りたかったら、有料となるAIDA64に表示させるしかないようです。