Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create an async API of some kind #15

Open
tanriol opened this issue Sep 19, 2021 · 0 comments
Open

Create an async API of some kind #15

tanriol opened this issue Sep 19, 2021 · 0 comments

Comments

@tanriol
Copy link
Owner

tanriol commented Sep 19, 2021

The main options are:

  • 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.

  • Something else?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant