我已经在以下位置克隆了电容式触摸的 androidthings 示例: https ://github.com/androidthings/drivers-samples/tree/master/cap12xx
以下用于初始化驱动程序:
mInputDriver = new Cap12xxInputDriver(this, BoardDefaults.getI2CPort(), null,Cap12xx.Configuration.CAP1208,keyCodes);
当这被击中时,我得到如下异常。我不确定我做错了什么或如何解决这个问题,因为我看不到 I2cDevice 类中发生了什么。硬件设置是安装在 Raspberry Pi Model 3 B 中的 RainbowHAT。显示、温度、压力和 LED 工作正常。
如何初始化 Cap12xxInputDriver?
04-29 20:33:45.159 1238-1238/? W/CaptouchActivity: Unable to open driver connection
com.google.android.things.pio.PioException: android.os.ServiceSpecificException: I/O error
at com.google.android.things.pio.I2cDevice.writeRegByte(I2cDevice.java:198)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.setInputsEnabled(Cap12xx.java:418)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.init(Cap12xx.java:241)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.<init>(Cap12xx.java:188)
at com.google.android.things.contrib.driver.cap12xx.Cap12xxInputDriver.<init>(Cap12xxInputDriver.java:92)
at com.google.android.things.contrib.driver.cap12xx.Cap12xxInputDriver.<init>(Cap12xxInputDriver.java:69)
at com.example.androidthings.driversamples.CaptouchActivity.onCreate(CaptouchActivity.java:51)
at android.app.Activity.performCreate(Activity.java:6662)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: android.os.ServiceSpecificException: I/O error
at android.os.Parcel.readException(Parcel.java:1697)
at android.os.Parcel.readException(Parcel.java:1636)
at com.google.android.things.pio.IPeripheralManagerClient$Stub$Proxy.I2cWriteRegByte(IPeripheralManagerClient.java:1517)
at com.google.android.things.pio.I2cDevice.writeRegByte(I2cDevice.java:196)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.setInputsEnabled(Cap12xx.java:418)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.init(Cap12xx.java:241)
at com.google.android.things.contrib.driver.cap12xx.Cap12xx.<init>(Cap12xx.java:188)
at com.google.android.things.contrib.driver.cap12xx.Cap12xxInputDriver.<init>(Cap12xxInputDriver.java:92)
at com.google.android.things.contrib.driver.cap12xx.Cap12xxInputDriver.<init>(Cap12xxInputDriver.java:69)
at com.example.androidthings.driversamples.CaptouchActivity.onCreate(CaptouchActivity.java:51)
at android.app.Activity.performCreate(Activity.java:6662)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1118)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2599)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2707)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)