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
Reuse the libftdi APIs.
Upside: close to the upstream APIs.
Downside: weird integration because these APIs want to drive the libusb event loop themselves.
Reuse the libftdi APIs, but also provide integration with tokio / async-std.
Upside: close to upstream and more or less native.
Downside: a significant amount of nontrivial code.
Reimplement basic read/write and provide integration with tokio / async-std.
Upside: more or less native.
Downside: a significant amount of nontrivial code, including some minimal REing of libftdi.
Use a separate ftdi thread, provide integration based on futures channels.
Upside: should be pretty easy.
Downside: extra latency.
The main options are:
Reuse the
libftdiAPIs.Upside: close to the upstream APIs.
Downside: weird integration because these APIs want to drive the
libusbevent loop themselves.Reuse the
libftdiAPIs, but also provide integration withtokio/async-std.Upside: close to upstream and more or less native.
Downside: a significant amount of nontrivial code.
Reimplement basic read/write and provide integration with
tokio/async-std.Upside: more or less native.
Downside: a significant amount of nontrivial code, including some minimal REing of
libftdi.Use a separate ftdi thread, provide integration based on
futureschannels.Upside: should be pretty easy.
Downside: extra latency.
Something else?