Bye Bye Moore

猫マンション建築の野望を胸に零細事業主として資本主義の荒波に漕ぎ出したアラサー男の技術メモ

Linux系ボードでi2cで通信しないならi2cdetectでアドレスを調べなおすのも手

それまで使っていたRasPi用I2CPythonスクリプトを違うデバイスで転用したところ

IOError: [Errno 121] Remote I/O error

などと怒られたのですが、全く検討がつかず。

入れ替えこそしたものの、中の石も周辺回路もほぼ同じなのに一体なぜ……?

あれこれ調べていて、もしやと思いi2cdetectを調べてみると……

$ sudo i2cdetect -y -r 1
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- 1c -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         

同じ加速度の石を使っていても、まわりの回路が違うのでi2cのアドレスも違うという話でした。

オプションの意味

"-y"

インタラクティブモードを停止
何もつけないとチャンネル走査風の画面がでますが
パースするとき無駄なので消した方が、個人的には好きです。

"-r"

読み取りコマンドがある場合にそれを使う


参考もと

qiita.com