jontio / JAERO

Demodulate and decode Aero signals. These signals contain SatCom ACARS messages as used by planes beyond VHF ACARS range
https://jontio.zapto.org/hda1/jaero.html
MIT License
224 stars 39 forks source link

Added new Feeder settings panel, added support for multiple feeder outputs with differing formats, added new JSON format -- JSONdump #84

Closed andermatt64 closed 1 year ago

andermatt64 commented 2 years ago

Note

Apologies for the gigantic PR, my original PR was smaller but after talking to others, there's a real need for multiple feeder outputs with differing formats.

What changed?

Testing

Settings Dialog Changes

Newly added options to Settings -> Decoding panel image

Newly added Settings -> Feeder panel image

Newly added create/edit dialog for feeders image

Example JSONdump Format Output

{
  "app": {
    "name": "JAERO",
    "ver": "v1.0.4.13"
  },
  "isu": {
    "acars": {
      "ack": "!",
      "arinc622": {
        "adsc": {
          "err": false,
          "tags": [
            {
              "wpt_change_event": {
                "alt": 36000,
                "lat": 51.001282,
                "lon": -30.005379,
                "nav_redundancy": true,
                "pos_accuracy_nm": 0.25,
                "tcas_avail": true,
                "ts_sec": 742
              }
            },
            {
              "predicted_route": {
                "next_next_wpt": {
                  "alt": 36000,
                  "lat": 50.999908,
                  "lon": -49.999981
                },
                "next_wpt": {
                  "alt": 36000,
                  "eta_sec": 3026,
                  "lat": 50.999908,
                  "lon": -40.000019
                }
              }
            }
          ]
        },
        "air_addr": ".D-AIHV",
        "crc_ok": true,
        "gs_addr": "PIKCPYA",
        "msg_type": "adsc_msg"
      },
      "blk_id": "7",
      "flight": "LH424",
      "label": "B6",
      "mode": "2",
      "msg_text": "J30ALH0424/PIKCPYA.ADS.D-AIHV14244487554D88CA0B981D0D2444471C71C8CA0BD2244446E38E48CA0097F3",
      "reg": "D-AIHV"
    },
    "dst": {
      "addr": "43",
      "type": "Ground Earth Station"
    },
    "qno": "07",
    "refno": "08",
    "src": {
      "addr": "3C6516",
      "type": "Aircraft Earth Station"
    }
  },
  "station": "jetson",
  "t": {
    "sec": 1665545421,
    "usec": 58000
  }
}
kevinelliott commented 2 years ago

Nice additions. I'd love to see this happen. Would be good to have the JSON keys match in case, but also to come even closer to @szpajder 's dump format (if possible) overall!

kevinelliott commented 2 years ago

Since we have the app element that indicates jaero and version, do you think the top level jaero element is necessary? I suppose since dumpvdl2 has the vdl2 top level element, this matches that.

andermatt64 commented 2 years ago

Since we have the app element that indicates jaero and version, do you think the top level jaero element is necessary?

Practically speaking, I don't think it's necessary. I put it in just to closer match the dump JSON format

kevinelliott commented 2 years ago

@andermatt64 This is some really great work. Thanks for taking all of our feedback here and on the ADSBX Discord.

andermatt64 commented 2 years ago

Looks good to me! I think you could add seqno too.

I tried adding it but the value seems to be always 00. I suspect it may be a value used internally to reassemble fragmented messages

kevinelliott commented 1 year ago

Hey @jontio ... would love to see this merged. We have quite a few live streams using this to airframes.io by quite a few people. @andermatt64 has done a great job. Think you could take a look and consider it?

thebaldgeek commented 1 year ago

Can confirm. I have installed around 40 of these builds with zero issues. Would really like to see it in the main build. Its tricky/confusing to point people to different repos.

jontio commented 1 year ago

Sorry I've been putting this off a bit as it's big and I've been doing other things recently. I was planning on going through it and do a bit of testing myself. But as people have tested it as seems to be working well I'll just pull it in. Thanks @andermatt64 and everyone else for their work.