-
Notifications
You must be signed in to change notification settings - Fork 19
Description
Hi! I've been working with PlainFlight and really appreciate the work you've put into this project.
I'm interested in adding support for additional radio receiver protocols beyond SBUS. Currently, SBUS is deeply embedded throughout the codebase, which makes it challenging to add alternatives like Crossfire, SRXL2, or other protocols.
Proposed approach:
I'd like to suggest refactoring the receiver handling to use an abstract base class that defines the interface for radio receivers. This would allow different protocol implementations to be swapped in cleanly without touching the core flight logic.
What I can contribute:
I have a Crossfire implementation with the same structure as the existing SBus implementation ready to test
I'm happy to create the abstract base class and refactor the existing SBUS code to use it
I can implement the integration so other protocols can be added easily in the future
Important caveat:
I'm contributing this in my spare time and can't commit to specific deadlines, but I'm motivated to see this through.
Would you be open to this kind of refactoring? If so, I'm happy to discuss the design approach before I start work to make sure it aligns with your vision for the project. If you have preferences on how the abstraction should be structured or any concerns about the change, I'd love to hear them.
Thanks for considering this!