Commit Graph

4 Commits

Author SHA1 Message Date
Gerhard Sittig d7df9dc738 serial_hid: add iokit= prefix for the Mac IOKit special case
Rephrase the logic which turns HIDAPI paths returned from enumerations
into something that can be used with conn= device options. Rearrange
code paths and rename variables to hopefully increase readability, and
to prepare support for more conditions in future implementations.

Replace the "IOService:" prefix on recent Mac versions with the "iokit="
literal, to eliminate the previously unhandled colon in path names. This
resolves bug #1586.

Move the allocation of a writable buffer from the callers to the callee,
to simplify multiple call sites, and most of all because the caller need
not be aware of the buffer's required size (input and output size can
differ in either direction).

Update the conn=hid/ section in README.devices, add the iokit= prefix.
2020-08-09 16:09:04 +02:00
Uwe Hermann f0901a5050 src/serial_hid.h: Include guard consistency fix. 2019-12-24 16:38:56 +01:00
Uwe Hermann c87e9d26f4 serial_hid.h: Update SER_HID_CHUNK_SIZE comment. 2019-06-15 17:17:52 +02:00
Gerhard Sittig edec0436db serial_hid: implement serial over HID transport
Do implement the transport methods for serial communication underneath
the common layer, by communicating HID requests and payload data by
means of HIDAPI library calls.

This commit adds the common logic of serial-over-HID communication and
implements the full internal serial transport API, including reception
in the background. But it does not yet support a single HID chip (which
each run their own proprietary protocol).

The implementation works with either hidapi-libusb or hidapi-hidraw
variant of the HIDAPI library, but was only tested on Linux.
2019-06-02 20:39:02 +02:00