Over the last few months we’ve seen an influx of homebrew RC controllers come our way, and we’re certainly not complaining. While the prices of commercial RC transmitters are at an all-time low, and many of them can even run an open source firmware, there’s still nothing quite like building the thing yourself. How else are you going to get exactly what you want?
For this entry into the 2019 Hackaday Prize, [Vitor de Miranda Henrique] is working on his own version of the ultimate open source remote control. His design follows some of the trends we’ve already seen in terms of outward design and hardware expandability, but also branches off into some new territory with features such as dual integrated displays.
Why does your controller need two displays? The top 4.3 inch TFT is linked up to a 5.2 GHz video receiver, which makes it perfect for controlling vehicles in “first-person” view, such as drones. The lower screen is a 2.8 inch touch screen from Adafruit, which is intended to be used for navigating through menus and options once the firmware is fully fleshed out.
Powering the controller is a ESP32 and dual MCP23017 GPIO expanders to connect up to the array of input devices available to the user. The current iteration of the controller has ten switches, two encoders, some buttons, and a pair of scroll wheels for good measure. Oh, and of course there are a couple of joysticks in the mix as well. All the devices terminate at a custom PCB in the back of the controller which looks to make modifying and adding input devices simple and neat.
We’ve previously seen the Alpha V1, an open source controller with a fairly similar setup, albeit without the dual displays. If even that one is a bit more complex than you’d like, you can always just do it with an Arduino.
And if the control sticks are junk, this control system will be an epic fail. Where are the receivers? DSM? DSMX? Futaba protocol? FrSky? We already have a really good open source system in the FrSky offerings. Open Tx is very good and can go a long way in meeting the needs of most remote control applications. Yes I fly FrSky/OpenTX.
The com protocol is whatever you want it to be, that’s kind of the point.
“ESP32, two MCP23017 gpio expanders” Sounds familiar. There is someone porting OpenTX to the same hardware: https://github.com/opentx/opentx/issues/6373
Best part about open source projects is he can just copy/paste/attribute code from OpenTX to make this work.
FrSky is currently playing a game using encrypted protocols to block out other vendors while pretending that Opentx, the open source system that drives their controllers, is somehow theirs. I applaud projects like this.
Funny part is the creators made it and was placed under a open source license agreement that you can do whatever you like when you make it for whatever reason…giving leeway to go off the deep end and not buy into sketchy companoes that charge exuberent ammout of money for these systems and platforms…but im a sucker…i put in my order for the rafio master tx16 max silver edition😅…im still going to make this here soon because i want to make it my own design….i wish there was a source code to detach the sides with the button array on the sides with the joys and the screen making it detachable like …yes, like the nintendo device…and then each one would need a seperate board for the controllers and protocol to speak to each other and or the main board or can also be connected to each other as one without screen…im daydreaming now🤣🤣🤣🤣🤣
If there’s no need to view the camera and menu at the same time, couldn’t a lot of the size and a little cost be saved by using one LCD for both?
I guess the creator believed there is a need, after all he made it to suit his needs…
I could think of one example why someone would want two displays: changing control options while flying FPV. Think of it like using your phone while driving a car…
The text area could be telemetry (altitude/speed) where the camera view is what information you want to capture.
More screens would be good (PFD altitude/speed, NAV route and location, Video, etc).