Open cyoung opened 9 years ago
I assume, in addition to the coding for encryption and handshake, this would also require Bluetooth support- yes?
I think so - there are some avionics that take only GDL39 over serial also. In terms of using it for Garmin Pilot it's probably bluetooth only.
I'm told that Garmin encrypts their transmissions, at least over the air. Haven't heard about direct wired.
Skypuppy7
On 10/20/2015 07:25 AM, cyoung wrote:
I think so - there are some avionics that take only GDL39 over serial also. In terms of using it for Garmin Pilot it's probably bluetooth only.
— Reply to this email directly or view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-149549389.
It uses blowfish encryption with a key that is negotiated in the handshake, the above link describes it.
If they wanted to compress the data interchanges, that's one thing. But encrypting it is downright
The GLD39 looks pretty straightforward and interesting. The paper is very interesting, and I agree that security between devices would be a great idea. Of course it requires agreement on the approach between the app and the device makers. BTW: the Garmin approach to security from looking at the GDL39 code is embarrassing. I'm starting to get the impression Garmin doesn't care. :)
What I'd love to see would be GDL-39 serial output so I can use Stratux to display traffic and weather on my Garmiin 696, instead of having to buy a GDL-39 to do it. Anyone with a Garmin x96 GPS -- and there are a lot of them out there -- could benefit from it.
My coding skills are limited, otherwise I'd take a whack at it myself. It's one of those things that doesn't look terribly difficult, but is beyond my abilities.
As with n980km, i'd like to see GDL-39 serial output so I could feed a Garmin handheld. In my case an Aera 660. I know many pilots with Aeras (500, 510, 550, 660, 760) and they have all been following the Stratux development and would all like to see this capability.
I'm going to see if I can get it to work
Hello, Did you succeed to write something ? It can be a great feature and I will be happy to provide help testing/debugging. Thank you
Does anyone own a GDL 39 (preferably 3D) who would be willing to provide a few minutes of a bluetooth packet capture?
Here's a reference on how to collect the traffic: https://www.nowsecure.com/blog/2014/02/07/bluetooth-packet-capture-on-android-4-4/
I don't own a GDL39 but have an Area 796 with old Zaon connected to it via serial connection. Let me know if I can help in any way.
The flight schools planes I rent now have GTX 345's which can all talk to ForeFlight (and Pilot) via the built in Connext link. I assume that's the same protocol data as the GDL 393D. I can work on capturing steams from that, probably just via a laptop, because laptops. I'll just use Wireshark unless someone has a better suggestion.
@lukepalmer, the bluetooth protocol has been documented previously... See the link in the FP. Implementing Connext would only help people who are buying new Garmin hardware. The goal with supporting GDL39 would be to support all of the existing Garmins in the field that can receive GDL39 data. If you can afford new Garmin hardware that talks Connext, you probably don't need a Stratux.
If all of the GDL39 (or Connext otherwise) is fully documented, then our job is done. It's just implementation work. If not, let me know, happy to capture streams to aid in full understanding the protocols. Of course we're borrowing GDL39s (or Connext setups) to get this data so the Stratux can act as a GDL39 (just like emulating Stratus). Obviously if we have either of those devices we don't need Stratux. :)
@Snowflake6 I'm not aware of any work on the 3D variant (with AHRS). Would be great if you know something I don't though! The thing that makes this interesting would be using Stratux with Garmin Pilot.
However: I think I've managed to get my hands on one. I'll work on getting a dump to post here.
@lukepalmer Personally I would consider the AHRS to be a bonus... I'm more interested in getting traffic and weather onto my Aera 660 without buying a GDL39 or an XM subscription.
We really need to get a hold of a GDL39. I was working on this months ago but I wasn't able to make any headway due to not having captures from a GDL39.
On Tue, Jun 13, 2017 at 12:05 PM, Rob notifications@github.com wrote:
@lukepalmer https://github.com/lukepalmer Personally I would consider the AHRS to be a bonus... I'm more interested in getting traffic and weather onto my Aera 660 without buying a GDL39 or an XM subscription.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-308183351, or mute the thread https://github.com/notifications/unsubscribe-auth/ABFQ04j5LLp7XJCg_Vq45gWj9z3vxKJLks5sDsFIgaJpZM4GK1z5 .
I just ordered a GDL39. I'll try getting a capture.
I am also very interested in getting the GDL39 protocol to work (to feed Garmin Pilot). Unfortunately, I do not have access to a GDL39 source device. Please let me know if there is any way to support the development activities either by coding or testing.
Maybe I should just buy one with a good return policy :)
On Fri, Jun 16, 2017 at 11:07 AM, Thorsten Biermann < notifications@github.com> wrote:
I am also very interested in getting the GDL39 protocol to work (to feed Garmin Pilot). Unfortunately, I do not have access to a GDL39 source device. Please let me know if there is any way to support the development activities either by coding or testing.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-309066918, or mute the thread https://github.com/notifications/unsubscribe-auth/ABFQ04uGeV1kjd8-S428Z4nL2DWYj_CGks5sEqhIgaJpZM4GK1z5 .
The one I just ordered was from eBay. It wasn't cheap, but it surely wasn't near full price!
On Fri, Jun 16, 2017, 11:42 jamez70 notifications@github.com wrote:
Maybe I should just buy one with a good return policy :)
On Fri, Jun 16, 2017 at 11:07 AM, Thorsten Biermann < notifications@github.com> wrote:
I am also very interested in getting the GDL39 protocol to work (to feed Garmin Pilot). Unfortunately, I do not have access to a GDL39 source device. Please let me know if there is any way to support the development activities either by coding or testing.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-309066918, or mute the thread < https://github.com/notifications/unsubscribe-auth/ABFQ04uGeV1kjd8-S428Z4nL2DWYj_CGks5sEqhIgaJpZM4GK1z5
.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-309075210, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wOlsIjE2Ebtw90UVIl3NMu-zzKKgks5sErBpgaJpZM4GK1z5 .
Got my GDL39 today. Here's a bluetooth capture from my living room. As such, it's just GPS and air-to-air traffic (mostly 1090 traffic out of Midway and Ohare).
https://drive.google.com/file/d/0B5KKdvTfqQ4vN2VmbHhmOHk0SXc/view?usp=sharing
Here's a trip I took over the weekend. It should have everything: all forms of traffic, weather, GPS, and a couple of Garmin Pilot/GDL39 handshakes.
https://drive.google.com/file/d/0B5KKdvTfqQ4vWENjSmNMZGJIZ1U/view?usp=sharing
What did you use to capture?
Android has a built-in Bluetooth capture facility in the developer menu. Those logs will open in Wireshark.
On Fri, Jun 30, 2017, 17:11 jamez70 notifications@github.com wrote:
What did you use to capture?
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-312383888, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wBpQ9RSVe-eMfnSgDr4iTKExGTK9ks5sJXKNgaJpZM4GK1z5 .
@kdknigga From your coordinates, it appears you live about 5 miles from me. Maybe we should just get together sometime?
@jamez70 Sounds good to me.
On Fri, Jun 30, 2017, 17:18 jamez70 notifications@github.com wrote:
@kdknigga https://github.com/kdknigga From your coordinates, it appears you live about 5 miles from me. Maybe we should just get together sometime?
— You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-312384860, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wM3mImE-URn94SaStMeaUks_ECpFks5sJXQUgaJpZM4GK1z5 .
any update on this? Loving my Stratux but I like using garmin pilot as well as foreflight. Wish I knew more to help this along.
Has anyone made any progress on this? @jamez70 @kdknigga ?
No, sorry.
On Sun, Feb 4, 2018 at 10:20 AM, Rob notifications@github.com wrote:
Has anyone made any progress on this? @jamez70 https://github.com/jamez70 @kdknigga https://github.com/kdknigga ?
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-362919128, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wHOgFGRgIBlJSRQpeVTQzEc1sD-Bks5tRdizgaJpZM4GK1z5 .
Apps4Av has some GDL39 code. See: https://github.com/apps4av/avarehelper/tree/master/app/src/main/java/com/apps4av/avarehelper/gdl90
While the GDL 39 does use the GDL 90 protocol, it requires a cryptographic handshake before sending the data (and might even encrypt the data in transit, I'm not sure). Unfortunately, to my knowledge, no one has figured out the handshake yet that gets the data flowing.
On Tue, Aug 21, 2018, 01:40 ninelima notifications@github.com wrote:
Apps4Av has some GDL39 code. See:
https://github.com/apps4av/avarehelper/tree/master/app/src/main/java/com/apps4av/avarehelper/gdl90
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-414566473, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wOZ65H5ONQDIPbpamcz_mA5s_mhkks5uS6t0gaJpZM4GK1z5 .
Thanks.
On 2018-08-21 22:15, Kris Knigga wrote:
While the GDL 39 does use the GDL 90 protocol, it requires a cryptographic handshake before sending the data (and might even encrypt the data in transit, I'm not sure). Unfortunately, to my knowledge, no one has figured out the handshake yet that gets the data flowing.
On Tue, Aug 21, 2018, 01:40 ninelima notifications@github.com wrote:
Apps4Av has some GDL39 code. See:
https://github.com/apps4av/avarehelper/tree/master/app/src/main/java/com/apps4av/avarehelper/gdl90
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-414566473, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wOZ65H5ONQDIPbpamcz_mA5s_mhkks5uS6t0gaJpZM4GK1z5 .
— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-414689326, or mute the thread https://github.com/notifications/unsubscribe-auth/ARGTASQ-epUV70NxCEGGe7BcvhxCbjVFks5uTBX6gaJpZM4GK1z5.
@kdknigga Just wondering ... isn't the encryption method described in the link above?
Perhaps. It's over my head, though.
On Sun, Sep 2, 2018, 04:33 armeniki notifications@github.com wrote:
@kdknigga https://github.com/kdknigga Just wondering ... isn't the encryption method described in the link above?
http://www.chartbundle.com/tech/gdl39/
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-417917069, or mute the thread https://github.com/notifications/unsubscribe-auth/ANN_wDUYudSuJ9na5IbesFiYIop8tWqiks5uW6XVgaJpZM4GK1z5 .
No worries! Well, I'm definitely up for helping out with this. I've done some developing (mostly in C and Visual Basic) for an access card system based on the AES2 and MiFare so the encryption stuff shouldn't be a problem. I am, however, unfamiliar with the RPi hardware, especially Bluetooth. Most of my experience has been on Atmel and PIC micro controllers. In any case, I'll start looking into what's needed to get a test environment together.
How old is the information on the gdl39 scheme at http://www.chartbundle.com/tech/gdl39/ ? Does anyone know if the handshake information is still applicable, or has garmin changed it via firmware update?
2012-09-02 23:06
I started hacking this with a GPSMAP 696 and a GDL39. That is serial only, but I have learned quite a bit. I have a good idea how the weather and traffic come across, but then writing code to emulate a GDL39 is another task altogether.
It starts at 9600 baud then switches to 57600 baud serial. The serial isn't encrypted at all either. Since I live near a ground station I am able to receive basically all the different messages exchanged.
That's useful info.
On Friday, June 26, 2020, jamez70 notifications@github.com wrote:
I started hacking this with a GPSMAP 696 and a GDL39. That is serial only, but I have learned quite a bit. I have a good idea how the weather and traffic come across, but then writing code to emulate a GDL39 is another task altogether.
It starts at 9600 baud then switches to 57600 baud serial. The serial isn't encrypted at all either. Since I live near a ground station I am able to receive basically all the different messages exchanged.
— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or unsubscribe.< https://ci3.googleusercontent.com/proxy/g2Rj0BVEjY89JsMw3pCnRewaBKDWpBLsr6DUHDZe9oCX0LYjo5FzvjY1tKkHKCySiaKLwlsFFkROCM3IQTcZGGgqDL-URNKviud_InQqBnur_fxzx2vgYANG55a5V8nIrbiNlbw5L1RvGTlqQw2QySBBtmVwOBrD-DkGyMUVnbbsx0X85LLI0CdJEPfjGZqyGLoT29H14KZq-yWOkXBZ6R8no2YmornGhOk28eQC1Q=s0-d-e1-ft#https://github.com/notifications/beacon/AHAT66AXS7BKCUDKBVCB6RDRYTSODA5CNFSM4BRLLT42YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOE3BUEVY.gif>
I could use some help if anyone wants to decipher some of these files...
I make a 2 port serial sniffer from an Atmel ATSAMC21 eval board, which sends the serial captured data to a windows application. In the windows application, I reconstruct the frames. Any frames that are files I wrote code to extract the files from them, and it saves them as files.
I'll show you a sample..
I basically have to figure out what the leading numbers before the '78 5e' mean. I think its loosely described in the document but its not exactly correct.
Jim
Here is the initial exchange at 9600:
(10047) GDL: 10 0A 02 B2 00 42 10 03 '.....B..' (11031) GDL: 10 0A 02 B2 00 42 10 03 '.....B..' (12047) GDL: 10 0A 02 B2 00 42 10 03 '.....B..' (13047) GDL: 10 0A 02 B2 00 42 10 03 '.....B..' (13047) GPS: 10 06 02 0A 00 EE 10 03 '........' (13719) GDL: 10 F9 00 07 10 03 '......' (13719) GDL: 10 00 02 20 00 DE 10 03 '... ....' (13719) GPS: 10 06 02 F9 00 FF 10 03 '........' (13719) GPS: 10 FF 89 E9 02 0C 03 47 50 53 6D 61 70 20 36 39 36 20 53 59 53 20 53 6F 66 74 77 61 72 65 20 56 65 72 73 69 6F 6E 20 37 2E 38 30 00 56 45 52 42 4D 41 50 20 4E 6F 6E 65 00 56 45 52 53 4D 41 50 20 4E 6F 6E 65 00 56 45 52 41 56 44 42 00 56 45 52 41 55 44 20 41 76 69 61 74 69 6F 6E 20 41 75 64 69 6F 20 50 6B 67 20 20 32 2E 30 30 00 56 45 52 53 50 4C 53 43 52 4E 20 53 70 6C 61 73 68 20 53 63 72 65 65 6E 20 32 2E 30 30 00 0C 10 03 '.......GPSmap 696 SYS Software Version 7.80.VERBMAP None.VERSMAP None.VERAVDB.VERAUD Aviation Audio Pkg 2.00.VERSPLSCRN Splash Screen 2.00....' (13750) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (13750) GDL: 10 06 02 FF 00 F9 10 03 '........' (13750) GDL: 10 00 02 20 00 DE 10 03 '... ....' (13750) GPS: 10 F8 7A 56 45 52 47 50 52 4F 4D 20 4E 6F 6E 65 00 56 45 52 53 54 44 42 20 41 6D 65 72 69 63 61 73 2D 39 20 54 65 72 72 61 69 6E 20 31 36 54 31 00 56 45 52 53 4F 44 42 20 55 53 2F 43 61 6E 61 64 61 20 4F 62 73 74 61 63 6C 65 73 20 31 38 42 31 00 47 50 53 20 4E 2F 41 00 56 45 52 47 50 49 20 41 4F 50 41 20 55 53 20 44 69 72 65 63 74 6F 72 79 20 44 61 74 61 20 31 38 44 31 00 9B 10 03 '..zVERGPROM None.VERSTDB Americas-9 Terrain 16T1.VERSODB US/Canada Obstacles 18B1.GPS N/A.VERGPI AOPA US Directory Data 18D1....' (13765) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (13765) GDL: 10 06 02 F8 00 00 10 03 '........' (13765) GDL: 10 00 02 20 00 DE 10 03 '... ....' (13781) GPS: 10 FD 96 50 00 00 4C 01 00 41 0A 00 54 01 00 41 64 00 44 6E 00 41 C9 00 44 CA 00 44 6E 00 44 D2 00 41 2D 01 44 38 01 44 2E 01 41 90 01 44 6E 00 41 F4 01 44 F5 01 41 58 02 44 58 02 41 59 02 44 59 02 41 8A 02 44 8A 02 41 BC 02 44 BC 02 41 20 03 44 20 03 41 22 03 44 22 03 41 84 03 41 85 03 44 86 03 41 86 03 41 87 03 41 89 03 44 84 03 41 91 03 44 91 03 41 8B 03 44 8B 03 44 8C 03 44 8D 03 44 8E 03 41 94 03 41 95 03 44 95 03 41 96 03 44 96 03 41 8C 03 44 8F 03 BB 10 03 '...P..L..A..T..Ad.Dn.A..D..Dn.D..A-.D8.D..A..Dn.A..D..AX.DX.AY.DY.A..D..A..D..A .D .A".D".A..A..D..A..A..A..D..A..D..A..D..D..D..D..A..A..D..A..D..A..D.....' (13797) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (13875) GDL: 10 06 02 FD 00 FB 10 03 '........' (13875) GDL: 10 00 02 20 00 DE 10 03 '... ....' (13875) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (14031) GDL: 10 00 02 20 00 DE 10 03 '... ....' (14031) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (14234) GDL: 10 00 02 20 00 DE 10 03 '... ....' (14234) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (14422) GDL: 10 00 02 20 00 DE 10 03 '... ....' (14422) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (14625) GDL: 10 00 02 20 00 DE 10 03 '... ....' (14625) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (14828) GDL: 10 00 02 20 00 DE 10 03 '... ....' (14828) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15015) GDL: 10 00 02 20 00 DE 10 03 '... ....' (15015) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15219) GDL: 10 00 02 20 00 DE 10 03 '... ....' (15219) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15422) GDL: 10 00 02 20 00 DE 10 03 '... ....' (15422) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15625) GDL: 10 00 02 20 00 DE 10 03 '... ....' (15640) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15828) GDL: 10 00 02 20 00 DE 10 03 '... ....' (15828) GPS: 10 06 04 00 00 20 00 D6 10 03 '..... ....' (15844) GPS: 10 00 06 21 00 65 53 85 D3 C9 10 03 '...!.eS.....' (16281) GDL: 10 06 04 00 00 21 00 D5 10 03 '.....!....' (16281) GPS: 10 F9 00 07 10 03 '......' (16281) GDL: 10 06 02 F9 00 FF 10 03 '........' (16281) GDL: 10 FF 4E 3F 05 EB 01 47 44 4C 33 39 20 53 79 73 74 65 6D 20 53 6F 66 74 77 61 72 65 20 34 2E 39 31 00 47 44 4C 33 39 20 41 54 6D 65 67 61 20 53 6F 66 74 77 61 72 65 20 32 33 32 00 4D 54 33 33 32 39 20 53 6F 66 74 77 61 72 65 20 32 2E 37 30 00 CC 10 03 '..N?...GDL39 System Software 4.91.GDL39 ATmega Software 232.MT3329 Software 2.70....' (16312) GPS: 10 06 02 FF 00 F9 10 03 '........' (16312) GPS: 10 30 04 00 E1 00 00 EB 10 03 '.0........' (16312) GDL: 10 FD 0F 50 00 00 4C 01 00 41 0A 00 41 96 03 44 96 03 55 10 03 '...P..L..A..A..D..U..' (16328) GPS: 10 06 02 FD 00 FB 10 03 '........' (16328) GDL: 10 06 02 30 00 C8 10 03 '...0....' (16328) GDL: 10 31 04 00 E1 00 00 EA 10 03 '.1........'
so I have successfully paired a simulator with the 696 using the protocol. Its talking back and forth, but its not displaying traffic or weather yet. Once I figure out how to package the traffic and weather data I will add that to the simulator.
Once I can simulate it, I could potentially port it to the stratux to at least connect to a GPS over a serial port and display ADS-B data.
@jamez70 this is excellent news, looking forward to hearing more as work progresses! My Aera 660 is standing by... :)
-Rob
Don't get too excited - I can't figure out how the GDL39 tells the GPS to request a file other than traffic_state. There is a whole slough of them that contain METARS, TAFS, Ground station logs, NOTAMS, PIREPS, Winds Aloft, etc. Its like looking in a pile of needles for a needle too
I have successfully cracked their blowfish key exchange and hopefully my simulator will be fully up and running
Hot damn, man!
On Wed, Apr 28, 2021 at 4:01 PM jamez70 @.***> wrote:
I have successfully cracked their blowfish key exchange and hopefully my simulator will be fully up and running
— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/cyoung/stratux/issues/75#issuecomment-828777507, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADJX7QEZJHW3RC5ZHFSDGQ3TLBZT7ANCNFSM4BRLLT4Q .
I have a 696. I sold my GDL39 years ago. I would be happy to help out with the Stratux-GDL39 emulation in any way you need. I would ultimately run my 696 with the Stratux over a hardwire serial connection.
Aera500 with stratux would make great adsb traffic display...
Already have the aera500 tx line going to av30.
Could be a really nice redundancy to have the tailbeaconX waas output going to stratux aswell.
2cents...
Thanks for your support.
Regards,
E. Cadenas De Frutos T: 1•514•906•7839 F: 1•866•208•3426
On Apr 29, 2021, at 11:26 AM, JW BRUCE @.***> wrote:
I have a 696. I sold my GDL39 years ago. I would be happy to help out with the Stratux-GDL39 emulation in any way you need. I would ultimately run my 696 with the Stratux over a hardwire serial connection.
— You are receiving this because you commented. Reply to this email directly, view it on GitHub, or unsubscribe.
If anyone is interested in implementing GDL39 -
http://www.chartbundle.com/tech/gdl39/
Interesting paper: http://cseweb.ucsd.edu/~savage/papers/CCS14MobileCockpit.pdf