You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am not so sure how difficult this is. I can see that the transport mechanisms are kind of abstracted out to a certain extent but not that clear. It would be good to improve the situation if possible.
Maybe serial port and parallel port are better asbstracted out but I did not look so deep into them. Parallel port is kind of dead anyway.
Example:
HIDAPI: the following code is there but it does not seem to be widely used by the programmers, rather the programmers are still using <hidapi/hidapi.h> directly. https://github.com/avrdudes/avrdude/blob/main/src/usb_hidapi.c (probably this is not sufficient)
And then there are quite some fall back codes. I understand the needs to support as wide platforms as possible but I guess it does add to the complexity of the codes.
usbasp -- try to use libusb-1.0 API, if not present then fall back to libusb-0.1 API
HIDAPI based programmer -- use HIDAPI first, if not present then fall back to libusb
PICKit 2 -- use libusb or Win32 API, it would be good to use HIDAPI instead and only fall back when HIDAPI is not present.
The text was updated successfully, but these errors were encountered:
I am not so sure how difficult this is. I can see that the transport mechanisms are kind of abstracted out to a certain extent but not that clear. It would be good to improve the situation if possible.
Maybe serial port and parallel port are better asbstracted out but I did not look so deep into them. Parallel port is kind of dead anyway.
Example:
HIDAPI: the following code is there but it does not seem to be widely used by the programmers, rather the programmers are still using <hidapi/hidapi.h> directly.
https://github.com/avrdudes/avrdude/blob/main/src/usb_hidapi.c (probably this is not sufficient)
libusb-0,1 API: the following code is there but I am not that so sure how widely it is used.
https://github.com/avrdudes/avrdude/blob/main/src/usb_libusb.c
And then there are quite some fall back codes. I understand the needs to support as wide platforms as possible but I guess it does add to the complexity of the codes.
The text was updated successfully, but these errors were encountered: