Search the Community
Showing results for tags 'Project Blog'.
Found 2 results
I leveraged off what was learned in the DiY FrSky GPS-Hub Project and spun-off the development of a FrSky telemetry interface specifically for MultiCopters. The goal was to use the sensor data already provided by the copter's Flight Controller. For example, my Quadcopter models' flight controllers have a barometric altitude sensor, voltage monitoring, GPS data, and more. In its simplest form, all that is needed to send this information to the FrSky telemetry Rx is a 9600 baud serial port and some custom code on the flight controller. I fly open source MultiWiiCopters with a hacked FlySky/Open9X transmitter, so this new design's reference point is based on my experience using them. The Flight Controllers in my models use the Arduino Pro Mini CPU (a low-end $20 processor board). It has a single serial port that could communicate the FrSky telemetry data. But this port is used by the GUI programming interface and it would be inconvenient to share it with the FrSky telemetry Rx. I'm not saying it is impossible or impractical, but rather I wanted a more elegant solution. Another issue is that memory space in the flight controller is getting a bit low, so I wanted to help minimize the impact to it. These two issues were the perfect invitation to create a co-processor that would interface the flight controller to the FrSky Rx. First on the list was to have the interface eliminate the need to use the Arduino's serial port. Next I thought it should perform as many high level functions as possible so that the main flight controller would have less to do (hence, reduced memory space requirements). But this means that the interface software would need to be customized to the flight controller. But a universal interface was more desirable so that other MultiCopter pilots could use it too. In the end, the most brilliant thing to do was to make the interface as dumb as possible. "Dumb" is the new "smart." So, now that you are up to speed, let's move on and talk about what was created. Essentially, it is a i2c bridge that connects the Flight Controller to the FrSky Telemetry Rx. The FrSky Rx thinks that it has a common telemetry hub attached to it, so there are no changes to FrSky's telemetry system. It is NOT a Arduino CPU based design. Instead, it uses a MicroChip PIC (PIC16F886). And although it was developed for the MultiWiiCopter, any open source flight controller, that has an i2c buss, should be able to use the bridge interface. The i2c buss is a 4-wire interface: V+, Ground, Data, and Clock. Flight controllers use it to communicate to the various on-board sensors. Today I received the new PCB boards and I quickly assembled one. It was a relief to find that everything worked as planned. For sure, it looks a bit nicer than my Frankenstein development prototype (a hacked up DiY Hub PCB). Here's a picture of the final version (shown above the smallest available FrSky telemetry Rx for size comparison):
EDIT: The technical data for the DiY FrSky GPS-Hub is in post #14. The ER9X hack discussion got a bit off topic when I dragged my FrSky GPS hub project into it. So I've spun-off the hub to this new dedicated topic. I'll use this as a sort of blog on the hub's progress. But before you read much further I recommend reviewing the original thread: http://www.rc-cam.co...827-er9x-hacks/ To help get you up to speed, we've been discussing the Turnigy/FlySky 9X transmitters and the nifty open source firmware that is available for it. Plus, our 9X's have been hacked and now sport the FrSky data telemetry modules. This combination is very affordable but requires delicate soldering and a few hours to perform all the upgrades. Then in a bit of temporary insanity, I decided to create a custom GPS hub for the FrSky R/C receiver. It would essentially replace the sensor module that FrSky already offers with a smaller, more integrated board that would fit inside the existing receiver. It would include a baro sensor (altimeter) and support common GPS modules (on a tethered cable). And because the hub will run custom software, the telemetry data can be optimized a bit. For example, it will support faster GPS updates and GPS signal quality status. That's the project in a nutshell. So now we can move on to the nuts and bolts. About three weeks ago I ordered the custom PCB's. They arrived yesterday and I was able to stuff a set, modify the code to run on the new processor, and test it out. I was relieved to find that the new Hub and the companion GPS works as planned. Also, the hub PCB fits nicely inside the 8-Channel FrSky Rx. So all the scary stuff is out of the way. Here's a photo of the assembled GPS-Hub and the optional GPS module board. Despite how big the photo makes them look, each board is about the size of a large postage stamp. At the moment the hub's software only provides GPS data. The baro altimeter code needs to be written. Plus, I think I will add a bootloader as a alternate way to install firmware upgrades. Hopefully these things will be done in a couple weeks. I'll post again as things progress.