Update onidriver for ftd3xx driver version 1.0.0.2 #21
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR is not expected to be directly merged at this point, but is a base from where to work.
The Linux/mac code for the ft600 onidriver was originally developed for version 0.5 of the ftdi driver, which had a completely different way of working than on Windows. A year ago, FTDI released the 1.x variant of their driver, which made the API closer to what it is on Windows. Unfortunately, by the time I wrote this, driver 1.0.0.2 had numerous bugs which I had to work with FTDI to resolve, which they were by 1.0.5.
We would need to take this code up to date, probably update it for 1.0.14 which is the latest D3xx FTDI driver. Related to #13 it would be nice it it could work on OSX as well.
The new API also supports notification callbacks on Linux/OSX, so it could be interesting to use them like in windows, instead of the different mechanism used now. However, from my last talk with FTDI people, the notification callback on Linux does not behave exactly like on windows and must act more like a IRQ, with very few and fast code being executed.