Чтение данных с usb методом массового переноса? - PullRequest
1 голос
/ 03 июля 2019

Я пытался прочитать некоторые данные с устройства (оксометр - UT-100), я могу отправить данные на устройство, но все еще не могу получить от него ответ: вот код, который может отправить, но не получить данные

private void setUpCommunication() {
    if (usbDevice != null) {
        bytes[5] = cs;


        final int TIMEOUT = 100;
        new Thread(new Runnable() {
            @Override
            public void run() {
                connection.controlTransfer(0x21, 0x22, 0x1, 0, null, 0, TIMEOUT);
                int i = connection.bulkTransfer(output, bytes, bytes.length, TIMEOUT);
                Log.d("dataTransfer", "Escreveu: "+i);

                new Thread(new Runnable() {
                    @Override
                    public void run() {
                        byte[] response = new byte[41];
                        int i = connection.bulkTransfer(input, response, response.length, 100*TIMEOUT);
                        Log.d("dataTransfer", "Recebeu: "+i);
                        if (response.length > 0) {
                            serial.setText("" + response[1]);
                        }
                    }
                }).start();
            }
        }).start();
    }
}

мой первый журнал возвращается 6, что правильно, но второй возвращает -1, что не является ожидаемым. Кто-нибудь может мне помочь? Он мне нужен, чтобы отправить мне данные, полученные оксиметром при измерении пульса пациента.

...