[{"data":1,"prerenderedAt":213},["ShallowReactive",2],{"blog-navigation":3,"blog-doc-\u002Fblog\u002Fflysky-hacking":66,"i-heroicons:chevron-right":205,"i-heroicons:hashtag":209,"i-heroicons:chevron-left":211},[4],{"title":5,"path":6,"stem":7,"children":8,"page":65},"Blog","\u002Fblog","blog",[9,13,17,21,25,29,33,37,41,45,49,53,57,61],{"title":10,"path":11,"stem":12},"Human Birdflight","\u002Fblog\u002Fhuman-birdflight-feasibility","blog\u002F1.Human-Birdflight-Feasibility",{"title":14,"path":15,"stem":16},"Stuff We Love","\u002Fblog\u002Fstuff-we-love","blog\u002F2.Stuff-We-Love",{"title":18,"path":19,"stem":20},"Flysky Hacking","\u002Fblog\u002Fflysky-hacking","blog\u002F3.Flysky-Hacking",{"title":22,"path":23,"stem":24},"GPIO on a Raspberry Pi CM5","\u002Fblog\u002Fgpio_on_raspberry_pi_cm5","blog\u002F3.GPIO_on_Raspberry_Pi_CM5",{"title":26,"path":27,"stem":28},"Exoskid - Flight One","\u002Fblog\u002Fexoskid-flight-one","blog\u002F4.Exoskid-Flight-One",{"title":30,"path":31,"stem":32},"Exoskid - Flight Two","\u002Fblog\u002Fexoskid-flight-two","blog\u002F5.Exoskid-Flight-Two",{"title":34,"path":35,"stem":36},"Exoskid - Trainer","\u002Fblog\u002Ff1.trainer","blog\u002F5.F1.Trainer",{"title":38,"path":39,"stem":40},"Flying Dreams","\u002Fblog\u002Fflying-dreams","blog\u002F6.Flying-Dreams",{"title":42,"path":43,"stem":44},"Fluglicht Soundtrack","\u002Fblog\u002Ffluglicht_soundtrack","blog\u002F7.Fluglicht_Soundtrack",{"title":46,"path":47,"stem":48},"The Legacy","\u002Fblog\u002Fthe_legacy","blog\u002F8.The_Legacy",{"title":50,"path":51,"stem":52},"Technology and Calculations","\u002Fblog\u002Ftechnology_details","blog\u002F9.Technology_Details",{"title":54,"path":55,"stem":56},"Business Lessons","\u002Fblog\u002Fbusiness_lessons","blog\u002F10.Business_Lessons",{"title":58,"path":59,"stem":60},"Vitravian Simulator","\u002Fblog\u002Fvitravian_simulator","blog\u002F11.Vitravian_Simulator",{"title":62,"path":63,"stem":64},"Post Archive","\u002Fblog\u002Fpost_archive","blog\u002F12.Post_Archive",false,{"id":67,"title":18,"body":68,"description":189,"extension":190,"meta":191,"navigation":202,"path":19,"seo":203,"stem":20,"__hash__":204},"blog\u002Fblog\u002F3.Flysky-Hacking.md",{"type":69,"value":70,"toc":179},"minimark",[71,76,88,91,96,99,114,122,125,134,140,143,147,154,163,166,170,173,176],[72,73,75],"h2",{"id":74},"using-the-flysky-fs-i6x-transmitter-and-fs-ia6b-receiver-connection-with-custom-data","Using the Flysky FS-i6X Transmitter and FS-iA6B Receiver Connection With Custom Data",[77,78,79,80,87],"p",{},"This post describes, how we \"hijacked\" the Flysky transmitter-receiver link with Arduinos to transport our exo data to the skid. If you don't know what an Exoskid is, see ",[81,82,86],"a",{"href":83,"rel":84},"https:\u002F\u002Ffluglicht.com\u002FExoskid",[85],"nofollow","here",".",[77,89,90],{},"Caution: Don't follow this guide mindlessly! We take no responibility for you breaking your gear. You do this at your own risk (and fun)!",[92,93,95],"h3",{"id":94},"setting-up-the-fs-i6x-transmitter","Setting up the FS-i6X Transmitter",[77,97,98],{},"Goal: Getting all 16 channels and a bunch of extras from OpenTX onto the FS-i6X.",[77,100,101,102,107,108,113],{},"In principle, you can use your vanilla FS-i6X link, by passing a PPM signal to the trainer port on the back. One just has to be careful, because the FS-i6X usually uses slightly different timings to the standard of the Arduino ",[81,103,106],{"href":104,"rel":105},"https:\u002F\u002Fgithub.com\u002Fschinken\u002FPPMEncoder",[85],"PPMEncoder"," library. Check out ",[81,109,112],{"href":110,"rel":111},"https:\u002F\u002Fwww.rcgroups.com\u002Fforums\u002Fshowthread.php?3792327-Controlling-Flysky-FS-I6X-with-an-arduino-via-trainer-port",[85],"this"," thread for details.",[77,115,116,117],{},"The Flysky i6X can be connected to the computer's USB port through the \"Trainer\" socket. Below you find a picture of the pinout of this Mini-DIN-4 port.\n",[118,119],"img",{"alt":120,"src":121},"Flysky Trainer Port Pinout","\u002Fimages\u002FFlysky_i6X_Trainer_Port_Pinout.png",[77,123,124],{},"There seems to be some dispute about this pinout on the internets. Except for the \"PPM Out\" we have used all of these pins and can confirm their function. You can buy a USB connector cable to connect to the trainer port. But you can also rig this temporarily by cautiously wedging in some jumper cables. Then you need an old USB cable to strip apart and connect accordingly to the above pinout (search for USB cable colors to figure out which goes where).",[77,126,127,128,133],{},"Once you have the connection, follow the guide of ",[81,129,132],{"href":130,"rel":131},"https:\u002F\u002Fgithub.com\u002FOpenI6X\u002Fopentx",[85],"Openi6X"," to install the new firmware. After installation, the buttons are a bit confusing at first. Below is a guide of how to navigate the screens:",[77,135,136],{},[118,137],{"alt":138,"src":139},"Openi6X Usage","\u002Fimages\u002FOpeni6X_usage.jpg",[77,141,142],{},"Fiddle around with it, until you get your receiver bind (Page 2 at the bottom -> \"Receiver\" [bnd]). Once that is done, you can get data onto the transmitter via the \"PPM in\" pin. These channels are available in the mixer as \"Tr1-16\". You don't need to enable student mode to use the channels, but I suppose one can, to get the first 4 channels as well. We used the first channels to always have the transmitter pilot in the game.",[92,144,146],{"id":145},"connecting-to-the-ia6b-receiver","Connecting to the iA6B Receiver",[77,148,149,150],{},"You can keep on using the PWM outputs of the receiver. You can also use the horizontal iBus output on the top right of the receiver, which is a serial output of all the signals.\n",[118,151],{"alt":152,"src":153},"FS-iA-6B Pinout iBus","\u002Fimages\u002FFS-iA6BOut.png",[77,155,156,157,162],{},"You can use the ",[81,158,161],{"href":159,"rel":160},"https:\u002F\u002Fgitlab.com\u002Ftimwilkinson\u002FFlySkyIBus",[85],"FlySkyIBus"," library to decode the signal, if you are using an Arduino on the receiver side as well. There is some triple trouble involved, if you use a SAMD-based Arduino like the Nano 33 IoT that we used (so beware the dragons and just don't do it)!",[77,164,165],{},"And there you go! Low latency, 16 channel, long-range remote control. It looks all so easy and clean, now that I've written it all up. But it took us a LONG time to piece together all the information and getting it to work. And it would have taken ages longer without the incredible coolness of all the linked sources, so big creds to them!",[92,167,169],{"id":168},"airplane-wiring-and-firmware","Airplane wiring and firmware",[77,171,172],{},"WIP",[77,174,175],{},"Some more stuff you need: Here is the wiring diagram of the airplane.",[77,177,178],{},"TODO: CAD Daten von Laptop sichern und hier einbinden. Schaltplan Flieger fotografieren und hier ablegen. Kalibration und Datenfluss beim Exoskid erklären (Exoskelett kalibration liefert normierte Daten, Exoskid kalibration versucht Fliegerdetails egal zu machen, sodass normierte Daten funktionieren).",{"title":180,"searchDepth":181,"depth":181,"links":182},"",2,[183],{"id":74,"depth":181,"text":75,"children":184},[185,187,188],{"id":94,"depth":186,"text":95},3,{"id":145,"depth":186,"text":146},{"id":168,"depth":186,"text":169},"Detailed description on using the Flysky data link","md",{"topic":192,"category":193,"authors":194,"tags":198,"date":201},"Electronics","Technical",[195],{"name":196,"avatar":197},"Peter Jüstel","Team_Platzhalter.png",[199,200],"FS-i6X","FS-iA6B","2024-04-05",true,{"title":18,"description":189},"4jjFnXdDBveh6VmsfTlI4Hg0U_9HrZukrL_f5a4FdfM",{"left":206,"top":206,"width":207,"height":207,"rotate":206,"vFlip":65,"hFlip":65,"body":208},0,24,"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" d=\"m8.25 4.5l7.5 7.5l-7.5 7.5\"\u002F>",{"left":206,"top":206,"width":207,"height":207,"rotate":206,"vFlip":65,"hFlip":65,"body":210},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" d=\"M5.25 8.25h15m-16.5 7.5h15m-1.8-13.5l-3.9 19.5m-2.1-19.5l-3.9 19.5\"\u002F>",{"left":206,"top":206,"width":207,"height":207,"rotate":206,"vFlip":65,"hFlip":65,"body":212},"\u003Cpath fill=\"none\" stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"1.5\" d=\"M15.75 19.5L8.25 12l7.5-7.5\"\u002F>",1782398428298]