|
From: Tim R. <ti...@pr...> - 2021-09-23 16:26:43
|
Stefano Mora wrote:
>> So, is this a device you are building? If so, then surely you must have
>> the specs for the it somewhere. You shouldn't have to guess.
> I'm not building the device: I'm only trying to communicate with it.
Very interesting. I see from the comments this is a PAX S80, which is a
point-of-sale credit card terminal. In that case, PAX is liable to be
sued by the USB Implementor's Forum, because vendor ID 1234 is not
assigned to them. It's assigned to Brain Actuated Technologies, as the
lsusb listing shows. It's astounding to me that any commercial
establishment would ship a device that violates the spec so flagrantly.
This is a custom interface type, so it does not fall into any of the
pre-defined USB device classes. It's not a printer, and it's not a
serial device. They have invented their own protocol, and the only way
to be sure is to get their technical documentation.
> ! The only news is that the device replied once (!), just after that I added the following rows of code (I saw it in a sample):
>
> ret = libusb_control_transfer( devHandle, 0x40, 0x01, 0x0300, 0, 0, 0, 5000);
> lwsl_err("ControlTransfer ret = %d\n", ret);
That's a vendor-defined request, so again we can learn nothing without
having their specs. Could be an enable, could be "power on", could be
"beam me up, Scotty".
> Running again the same code I had no reply (?????)
Without specifications from the manufacturer, your job is hopeless.
--
Tim Roberts, ti...@pr...
Providenza & Boekelheide, Inc.
|