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

nRF24LU1 backend #35

Open
natevw opened this issue Mar 1, 2015 · 2 comments
Open

nRF24LU1 backend #35

natevw opened this issue Mar 1, 2015 · 2 comments

Comments

@natevw
Copy link
Owner

natevw commented Mar 1, 2015

Nordic also offer the nRF24LU1, a SoC for which I'd like to develop a basic "passthrough" firmware — then instead of having to wire up an nRF24 breakout board via the GPIO pins, you could simply plug one into USB (even on e.g. a MacBook!) and be done…

Basic ideas:

  • probably make the SoC enumerate as an HID, 64 byte packet limit there should be more than sufficient and then no drivers necessary
  • probably need to invert the xcvr_base vs. xcvr_api class hierarchy, so that we can override at the getStates/setStates/execCommand level [this is probably a better way to support all alternate backends anyway…]

c.f. the Geeetech Crazyradio (built primarily to control a little quadcopter) which has a nice external antenna.

@Manawyrm
Copy link

Manawyrm commented Mar 7, 2015

brillant idea. You can buy LU1 dongles in china for under 10$.
Programming them on the other side is unfortunatly a bit strange/hard, you either need to buy the really expensive (500$!!) genuine programmer, or build one of the hacky-versions (with LPC-arm-core)...

@natevw
Copy link
Owner Author

natevw commented Mar 18, 2015

Another note on this: for HID the throughput will be limited, which for many use cases will be fine, but no where near the 2Mbps RF link rate. An alternate (or perhaps primary, based on driver situation…) backend based on the "default" firmware with separate control/bulk endpoints might be more general. If I can communicate with the USB device without an OS-level driver, this would be the way to go.

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

2 participants