Я делаю приложение для Android в Odroid Xu4, к нему подключен Xbee Pro s2 через последовательный преобразователь USB с драйвером cp210x, использующим порт ttyUBS0, но внутри приложения оно отключается от ttyUBS0 и использует bus / dev / bus / usb / .. Нет, я необходимо открыть последовательный порт для доступа к Rx / Tx для xbee. Сейчас я использую usb-serial-for-android https://github.com/mik3y/usb-serial-for-android/tree/master/usbSerialExamples
Но это не очень помогает, мое приложение вылетает, как только открываю устройство xbee. Вот мой код
List<UsbSerialDriver> availableDrivers = UsbSerialProber.getDefaultProber().findAllDrivers(manager);
if (availableDrivers.isEmpty()) {
return;
}
UsbSerialDriver driver = availableDrivers.get(0);
Toast.makeText(this, "connection done" + driver, Toast.LENGTH_LONG).show();
List<UsbSerialPort> availableports = driver.getPorts();
for (UsbSerialPort port : availableports) {
Toast.makeText(this, "port please :" + port.getPortNumber(), Toast.LENGTH_LONG).show();
UsbDeviceConnection connection = manager.openDevice(driver.getDevice());
try {
port.open(connection);
Toast.makeText(this," yes i m connected to port", Toast.LENGTH_LONG).show();
port.setParameters(BAUDRATE, 8, 1, 0);
Toast.makeText(this," baudrate set", Toast.LENGTH_LONG).show();
PORT = driver.getDevice().toString();
if (PORT == null) {
Toast.makeText(this, "not connected",Toast.LENGTH_LONG).show();
}
else
{
XBeeDevice mydevice = new XBeeDevice(PORT, BAUDRATE);
Toast.makeText(this, "connected",Toast.LENGTH_LONG).show();
try {
mydevice.open(); //App crashes now :(
Toast.makeText(this, "connected woow",Toast.LENGTH_LONG).show();
} catch (XBeeException e) {
e.printStackTrace();
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
Может кто-нибудь направит. Я что-то не так делаю в коде? Вот еще одна библиотека, которую я нашел http://antipastohw.pbworks.com/w/page/41729078/How-to%20use%20a%20serial%20port%20with%20Android,%20Liquidware%20Ambrosia%20edition Может ли это оказаться полезным?