[BRLTTY] Introducing myself, and a question regarding BRLTTY for Windows

Dave Mielke dave at mielke.cc
Tue Jul 12 05:56:17 EDT 2016


[quoted lines by Felix Grützmacher - Handy Tech Elektronik GmbH on 2016/07/12 at 10:20 +0200]

>brltty.exe: USB: setup packet: Typ:80 Req:06 Val:0300 Idx:0000 Len:00FF
>brltty.exe: USB: control input: 04 03 09 04
>brltty.exe: USB: USB language: 409

Determining the language used for the USB string descriptors worked. 409 means English.

>brltty.exe: USB: setup packet: Typ:80 Req:06 Val:0301 Idx:0409 Len:00FF
>brltty.exe: USB: control input: 36 03 48 00 61 00 6E 00 64 00 79 00 20 00 54 00 65 00 63 00 68 00 20 00 45 00 6C 00 65 00 6B 00 74 00 72 00 6F 00 6E 00 69 00 6B 00 20 00 47 00 6D 00 62 00 48 00

Reading the manufacturer name worked. the text is actuallly logged, so you probably don't have enough logging enabled to see it. Looking at the hex, though, it says: Handy Tech Elektronic GmBH

>brltty.exe: USB: setup packet: Typ:80 Req:06 Val:0302 Idx:0409 Len:00FF
>brltty.exe: USB: control input: 1E 03 41 00 63 00 74 00 69 00 76 00 65 00 20 00 42 00 72 00 61 00 69 00 6C 00 6C 00 65 00

Same for the product name. The hex says: Active Braille

>brltty.exe: USB: setup packet: Typ:80 Req:06 Val:0303 Idx:0409 Len:00FF
>brltty.exe: USB: control input: 1A 03 41 00 42 00 34 00 2F 00 41 00 31 00 2D 00 31 00 32 00 31 00 34 00 31 00

Same for the serial number. The hex says: AB4/A1-12142

>brltty.exe: USB: setting configuration: 1

This worked, although no USB operations are being shown for it. This is probably because libusb is handling it internally.

>brltty.exe: USB: setup packet: Typ:80 Req:06 Val:0200 Idx:0000 Len:00FF
>brltty.exe: USB: control input: 09 02 29 00 01 01 00 80 32 09 04 00 00 02 03 00 00 00 09 21 10 01 00 01 22 46 20 07 05 81 03 08 00 0A 07 05 02 03 01 00 0A

Reading in all of the USB descriptors for configuration 1 worked.

>brltty.exe: USB: claiming interface: 0


Claiming interface 0 worked.

>brltty.exe: USB: ept=81 dir=in xfr=int pkt=8 ivl=10ms

It wants to read input from endpoint 81.

>brltty.exe: USB: clearing endpoint: 81

It does a successful clear halt on endpoint 81.

>brltty.exe: usbSubmitRequest error 40: Function not implemented.

This is just a warning. It means that asynchronous input can't be set up, so, though it's not explicitly stated here, it'll fall back to syncyhronous input. The actual reason for this is that we haven't yet implemented asynchronous input via libusb.

>brltty.exe: USB: endpoint descriptor not found: 01

So here's the real problem. It wants to do output via endpoint 01, but it can't find the descriptor for that endpoint.

Here's our USB definition for the Active Braille:

    { /* Active Braille */
      .vendor=0X1FE4, .product=0X0054,
      .configuration=1, .interface=0, .alternative=0,
      .inputEndpoint=1, .outputEndpoint=1,
      .data=&usbOperations3
    },

My guess is that you've now introduced a new way to access this device, and that we need to add support for it.

-- 
Dave Mielke           | 2213 Fox Crescent | The Bible is the very Word of God.
Phone: 1-613-726-0014 | Ottawa, Ontario   | http://Mielke.cc/bible/
EMail: Dave at Mielke.cc | Canada  K2A 1H7   | http://FamilyRadio.org/


More information about the BRLTTY mailing list