2017-12-28 13 views
1

Googleは/ dev/pathからi2cデバイスを変更して削除しました。I2Cデバイスは/ dev/i2c-1(プレビュー5および6/6.1)として利用できません

彼らは私、あなたがこれを使用しているデバイスを削除/追加:

I2cDevice DEV = pService.openI2cDevice( "I2C1"、0x68)

そして、あなたが切断する場合は/ dev/I2C-1がなくなっていますI2Cデバイス:dev.close();

これは、あなたが経由でアクセス権を持っていない理由です:

オープン( "は/ dev/I2C-1"、O_RDWR);

(これは問題なくバージョン4.1で可能であった)

だから、今のGoogleは、それが複雑に...との質問は、私は、起動後にデバイスのI2C-1を持ち帰ることができる方法、ありますか?

+0

/dev/i2c-1を使用するユースケースは何ですか?なぜあなたはJavaインターフェイスを使用できませんか? –

+0

私はGooglesの実装が嫌いです。それは複雑で遅いか​​らです。私はAndroid Things APIを使わずにダイレクトメモリアクセスを使用しています:3倍高速で、Android Things APIは私のソリューションにあるすべての機能を備えていません。 – Kyle

答えて

0

@Kyleあなたがやっていることはうまくいくかもしれませんが、確かにAndroid Thingsではサポートされていません。 Android Thingsが開発者のプレビューを残すと、(デバイスがSELinux強制モードになっているため)デバイスファイルにまったく直接アクセスできなくなることがあります。

その間、おそらく次のコマンドを実行してデバイスノードを再作成できます。せいぜいこれは一時的な解決策です。これらのコマンドは起動時に実行する必要があります(initスクリプトのいずれかに追加しない限り)。

$ adb shell 
rpi3:/ $ su 
rpi3:/ # mknod /dev/i2c-1 c 89 1 
関連する問題