逆行する
電子機器の修理は以前ほど難しくありません。 インターネットのおかげで、ガジェット内の標準コンポーネントのデータシートやアプリケーション ノートを簡単に見つけることができます。欠陥のあるコンポーネントを見つけたら、100 万あるウェブ ショップの 1 つから交換品を購入するだけです。もちろん偽物です。 しかし、非標準コンポーネントとなると、事態はさらに困難になります。[dpeddi] が、ディスプレイが壊れた Roland Juno-G シンセサイザーの修理を友人に頼まれたときに知りました。
ここでの主な問題は、問題のディスプレイがカスタム設計であり、交換品や入手可能なドキュメントがないという事実でした。 [dpeddi] がサービス マニュアルから理解できた唯一のことは、基本的なピン配列でした。これは、「チップ セレクト」というラベルの付いた 2 本の線を持つパラレル インターフェイスを示していました。これは、ディスプレイに 2 つの別個のコントローラーが含まれていることを示しています。 しかし、正確なプロトコルとデータ形式は文書化されていなかったため、[dpeddi] はロジック アナライザーを持ち出し、シンセサイザーによって生成された信号をデコードしようとしました。
少しの試行錯誤の後、彼はプロトコルを理解することができました。それは、ディスプレイに 2 つの KS0713 タイプの LCD コントローラが含まれており、それぞれが画面の半分を制御しているようでした。 互換性のある代替品を見つけるのはまだ難しいことが判明したため、[dpeddi] は代わりにマイクロコントローラーを使用して元の信号をデコードし、SPI で駆動される最新の LCD に画像を表示することにしました。 ESP32 でいくつかの初期実験を行った結果、2 つの適度に高速なパラレル バスを読み取り、さらに高速なシリアル バスを駆動するというタスクは ESP には少し負担が大きすぎることが判明したため、[dpeddi] は Raspberry Pi Pico にアップグレードしました。 これはうまくいき、3D プリントされた取り付けブラケットのおかげで、新しいディスプレイもローランドのケース内にぴったりと収まりました。
Pico のコードは [dpeddi] の GitHub ページで入手できるので、Juno-G に危険なディスプレイがある場合は、それをダウンロードして、それを使用して新しいディスプレイを接続することができます。 ただし、既存の表示プロトコルをリバース エンジニアリングして新しい表示プロトコルに変換する方法は非常に汎用的で、ビンテージの電卓やマルチメーター、さらには別のシンセサイザーなど、あらゆる種類の電子デバイスを操作するときに便利です。 。