Seeed K.K.の松岡です。
いま開催しているSeeed reTerminal 拡張モジュールコンテストの申し込みが少なくて、やきもきしています😥。アイデアだけでもOKなので、みなさん是非参加してください。→reTerminal拡張モジュールコンテストに応募しよう
今回はreTerminalでブザーが鳴らなくて困った話です。
ブザーが鳴らなくなった
reTerminalを最新の(bullseyeベースの)Raspberry Pi OSにすると、ディスプレイが横向きに表示されてしまい使いにくかったのですが、ゴニョゴニョ設定するときちんと表示されるようになりました。
上機嫌でbullseyeを使っていたのですが、、、
ブザーを鳴らそうとしても、鳴りません。cd /sys/class/leds/usr_buzzer
コマンドでNo such file or directoryというエラーになってしまいます。
内蔵ハードウェアを一通り確認したところ、次の機能が正常に動作しませんでした。
- 前面ボタン
- 前面LED
- 内蔵ブザー
対処法
reTerminalに内蔵している、ボタン、LED、ブザーを制御するチップ「I/O拡張チップ」のドライバーを設定変更すると、正しく動作するようになりました。
i2cdetect -y 1
を実行して、20の表示があるのを確認してください。
sudo vi /boot/config.txt
を実行して、/boot/config.txtのdtoverlay=reTerminalに、,addr=0x20,mcp23008を追記してください。
sudo reboot
を実行して、再起動してください。i2cdetect -y 1
を実行して、20の場所にUUと表示されていれば正常です。
なにが起こっているのか
問題となったのは、I/O拡張チップのドライバー設定です。
I/O拡張チップは、下図赤丸で示したもので、ボタン、LED、ブザーをCompute Module 4のI2Cバスに接続するチップです。
このI/O拡張チップは、reTerminal発売当初はMicrochip MCP23008を採用していました。しかし、昨今の半導体不足の影響なのか、入手が難しくなったことから、2021/9/3以降、NXP PCA9554に変更しました。
そして、reTerminalに関連したドライバーがNXP PCA9554用に設定されているので、、、Microchip MCP23008のreTerminalでは、I/O拡張チップが動作せず、ボタン、LED、ブザーが使えなくなっていたのでした。
該当するのは次の場合です。
- 箱に書かれている日付(Released Date)が2021/9/3よりも前。
- reTerminalに関連したドライバーを手動でインストール。
ちなみに、日本で売られている技適マーク付きのreTerminalは2021/9/3以降のものなので、この事象には該当しないです。ご安心ください。
謝辞
参考リンク
- Getting Started with reTerminal
- Why does buzzer, LEDs and buttons do not work after installing the reTerminal drivers?
- cannnot get events of user programmable buttons
変更履歴
日付 | 変更者 | 変更内容 |
---|---|---|
2022/3/1 | 松岡 | 作成 |
2022/4/11 | 松岡 | 画像クリック時に拡大表示されない不具合を改修 |