経緯
ラズパイでservoモータの制御をインストールしようとしたら、
「エラー [Errno 121] Remote I/O error」
と出たので、
今回、勉強してみました。
エラー全文
以下がエラー全文です。
[Errno 121] Remote I/O error
I2C bus number is: 1
Checking I2C device:
I2C device exist.
Your PCA9685 address is set to 0x40
i2cdetect output:
0 1 2 3 4 5 6 7 8 9 a b c d e f
00: -- -- -- -- -- -- -- -- -- -- -- -- --
10: -- -- -- -- 14 -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --
Conneceted i2c device:
0x14
Device is missing.
Check the address or wiring of PCA9685 Server driver, or email this information to
問題と原因
問題
エラー [Errno 121] Remote I/O error は、Raspberry PiとPCA9685サーボコントローラボード間のI2C通信に問題があることを示しています。共有された情報に基づき、この問題の原因と解決策は以下の通りです:
I2Cアドレスの不正確さ
PCA9685のアドレスが 0x40 に設定されていますが、i2cdetect の出力はアドレス 0x14 にデバイスがあり、0x40 にはデバイスがないことを示しています。この不一致は、PCA9685が期待されるアドレスと異なるアドレスを使用している可能性があります。PCA9685のアドレスが設定可能かどうかを再確認し、正しく設定されていることを確認してください。一部のPCA9685ボードは、アドレスを変更するためのはんだ付けジャンパーやスイッチを持っています。
配線問題
このエラーは、Raspberry PiとPCA9685ボード間の接続が悪いために発生する可能性があります。SDA(データ)ラインとSCL(クロック)ライン、および電源接続の配線を再確認してください。それらがしっかりと接続されており、Raspberry PiとPCA9685ボードの両方の適切なピンに正しく接続されていることを確認してください。
電源問題
PCA9685が適切な電源を受け取っていない可能性があります。通信問題の原因となることがあります。電源がRaspberry PiとPCA9685ボード(制御しようとしているサーボも含む)の要件を満たしていることを確認してください。
PCA9685の設定または故障
PCA9685ボードが正しく設定されていないか、故障している可能性があります。PCA9685ボードを初期化するために必要な設定手順を確認してください。可能であれば、別のマイクロコントローラーやRaspberry Piでボードをテストし、ボード自体の故障を除外してください。
I2Cインターフェースの有効化
Raspberry PiでI2Cインターフェースが有効になっていることを確認してください。「raspi-config」ツールの「Interfacing Options」メニューを通じて有効にすることができます。これはI2Cデバイスとの通信に不可欠です。
ソフトウェア/ライブラリの依存関係
PCA9685を操作するために必要なすべてのソフトウェアとライブラリの依存関係がRaspberry Piにインストールされていることを確認してください。これには、I2C通信用のライブラリやPCA9685を制御するための特定のライブラリが含まれます。
私の場合
上に書いた解決方法をいろいろやったのですが、うまくいきませんでした。
原因は以前「Raspberry Pi Zero 2 W」のOSをインストールしたものをそのまま使っていたので、
それを書き変えたら、エラーは解決しました。
参考になれば、幸いです。
ここまで読んでいただきありがとうございました。
スクールの紹介
【アイデミー】AIを学んで一発逆転のキャリアチェンジ!最後に宣伝をさせてください。
夢見るAIエンジニアへ、今こそ一歩を踏み出せ!
最近、AI技術やデータサイエンスに興味を持ち始めたあなた。将来、AIエンジニアやデータサイエンティストとして活躍したいと考えているかもしれません。また、AIを使って業務課題や研究課題を解決したい、あるいは教養としてAIの知識を深めたいと思っている方もいるでしょう。
しかし、学び始めるとなると「どこから手をつけて良いのか分からない」「専門的すぎて理解できない」といった悩みが生じることも。そんなあなたのために、この3ヶ月間集中してAIプログラミングを習得するオンラインコーチングサービスがオススメです!
なぜこのサービスが選ばれるのか?その理由はこちら
- 初心者から上級者まで
完全なプログラミング初心者から研究者まで、幅広い方々に優良なコンテンツが提供されます。 - 徹底的な進捗管理
受講者の進捗をしっかりとチェックし、つまずきやすいポイントでのフォローが万全です。 - 専属メンターによる徹底サポート
AIの学び方から、実際の適用まで、専属のメンターが手厚くサポートします。 - 場所を選ばず学べるオンライン完結
東京以外の地域からも、気軽に学び始めることができます。
信頼の実績多数!
・日本最大級のプログラミングスクール実績
・受講者総数700名以上
・SaaS型学習サービス会員65,000名以上
・企業導入実績120社以上
・グッドデザイン賞受賞
・著名な賞受賞歴や経団連加盟も実現
夢を叶えるための第一歩を、一緒に踏み出しませんか?今なら、あなたもその一員として学び始めることができます!