Aerofly FS4 UDP Flight Data recorder and Replay - Rewinger

  • Dear All,

    I got the inspiration to modify Jugac64 Aircraft Tracker to add a few functionalities like the recorder of the UDP data to CSV and the ability to replay it in the tracker.
    For the most part is feature complete, but there are some known issues that I will work to remove in a future version.

    Github link: https://github.com/AeroSageMage/rewinger

    Features:

    • allowing to save a CSV with the recorded data from the flight on output_recorder
    • filters the initial position (0,0) from Aerofly FS4 when tracker is live
    • data can be replayed via
    Code
    python3 send_GPS_data.py /path/to/file/output_GPS_data.csv


    Known limitations:

    • to see the replayed data, a live Aerofly FS4 session in flight must be active (or spoofed via UDP packet)
    • need to remove the garish warning stripe around the log data button
    • Airplane info must be entered manually in the first line of the CSV file (see example) for traffic to show the ICAO and flight number

    Usage:

    Code
    python3 rewinger.py

    Let me know!

  • Hi SageMage , great work! data recorded, thank you very much. In my Windows setup, it is adding a blank line after all data row, and it seems that this is giving problems to reproduce the flight.

    Take off:


    Arrival:


    Recorded data:

    Best regards, Juan

    Einmal editiert, zuletzt von Jugac64 (14. April 2025 um 04:47)

  • Interesting. Must be somehow connected with the OS (Windows handling new lines differently from Unix machines). I will investigate it on a windows machine soon.
    Apart from the additional blank line, are you able to reproduce the entirety the flight or there are stutters?
    Note: The “NO DATA” flag is because it’s receiving only the GPS data and not the aircraft information (e.g. icao address or callsign)

    I already have a newer version that I’m testing, I will check what is with the double lines.

  • Dear All!
    New version on GitHub:

    Modified Airtracker to be used with Aerofly FS4 UDP capabilities.

    Developed to work with Aerofly FS4

    GitHub - AeroSageMage/rewinger: Modified Airtracker to be used with Aerofly FS4 UDP capabilities.
    Modified Airtracker to be used with Aerofly FS4 UDP capabilities. - AeroSageMage/rewinger
    github.com

    Features:

    allowing to save a CSV with the recorded data from the flight on output_recorder

    filters the initial position (0,0) from Aerofly FS4 when tracker is live


    This program is an open source real-time aircraft tracker that visualizes Aerofly FS4 - (C) Copyright IPACS -

    flight simulator data on an interactive map. It can be used to track flights, analyze routes,

    and enhance the overall simulation experience. Key features include:


    - Receives UDP data from Aerofly FS4 (C) flight simulator

    - Displays the aircraft's position on a customizable map interface

    - Shows real-time flight information including latitude, longitude, altitude, ground speed, heading, pitch, and roll

    - Allows users to switch between different map styles

    - Updates the aircraft's position and orientation in real-time

    - Provides a user-friendly GUI for easy interaction

    Version 25: Added a connection status label and improved error handling for UDP data reception.

    :::REWINGER:::

    - allowing to save a CSV with the recorded data from the flight on output_recorder

    - filters the initial position (0,0) from Aerofly FS4

    - data can be replayed via Send_GPS_data.py output_GPS_data.csv

    - added "follow aircraft" toggle

    - added "arm" the recorder

    Rewinger Version 2:

    - cleaned the graphical interface

    - added the capability to "arm" the recorder, that means: will wait until there's GPS UDP packets incoming and then starts recording

    - added the "follow aircraft" toggle - without, the map does not move with the main aircraft

    - Main aircraft is named "Aerofly FS 4"

    - corrected the known limitation that needed a live GPS stream to work with traffic


    Usage:

    Code
    python3 rewinger.py


    Send GPS data with:

    Code
    python3 send_GPS_data.py /path/to/file/output_GPS_data.csv GPS

    Send Traffic data with:

    Code
    python3 send_GPS_data.py /path/to/file/output_GPS_data.csv TRAFFIC

    In work:

    change of data structure for GPS, Attitude, Traffic

    Addition of Aircraft data (e.g. ICAO, SayIntentions-adiacent data)


    Jugac64 your issue with the NO DATA should be fixed!

  • Hi SageMage , I still don't try this version, I was working on my other project, but I want to ask for your help if it possible.

    Since you work in Mac,could you build an EXE equivalent file for Mac, for my original map app, so I can add it in the download page:

    Python Aircraft Tracker on map for Aerofly FS4 - Flight-Sim.org
    Aircraft Tracker This program is a small Python application, written by Anthropic Claude 3.5 Sonnet, open sourced real-time aircraft tracker that visualizes…
    flight-sim.org

    If you are working with Claude it is very easy. You need to upload the file to Claude, and ask it to arrenge it for PyInstaller to bundle it for Mac. It will modify the code a little. And don't forget to explain it about the aircraft icon, it should be included too. Thanks!

    Best regards, Juan

    Einmal editiert, zuletzt von Jugac64 (16. April 2025 um 17:52)

  • Hello Jugac64 ,

    my trip has been cancelled so I had some time to create your app bundle. Please be aware that is not signed, so ...
    When distributing an unsigned app:

    1. The user may see security warnings when trying to open the app for the first time
    2. They'll need to right-click (or Control+click) on the app and select "Open" from the context menu to bypass Gatekeeper security
    3. On more recent macOS versions, they might need to go to System Preferences/Settings > Security & Privacy and click "Open Anyway" after the first launch attempt

    For simple sharing, this approach is perfectly fine. The app will work correctly once they get past the initial security dialogs. Just let your users know they'll need to take these extra steps when first opening the app.

    If the app gains popularity and wider distribution becomes necessary in the future, that would be the time to consider proper code signing and notarization.

    Now, how do I share it with you? The forum attachments are limited to 1 MB and with the imports the .app is approx 18MB...

    Best regards,

    SageMage

  • Hi SageMage , thank you very much! I will include all your explanation in the post, so users know how to use it. Please upload it anywhere and post the link, so I can download it. In https://flight-sim.org/ we can upload bigger files, and I recommend you to open an account there, so you can share your work too. This is the place where most of Aerofly FS community work is shared. Thanks again!

    Best regards, Juan

  • Maybe Armitage can help us here :)

    for calou95 I managed (well, with Claude's support) to add the import of .kml files generated by SimBrief - unfortunately, they contain only the GPS data of the waypoints so it's just ugly straight lines.
    Armitage any idea what should I look for to get the flight plan the same way you get in the navigation planning from Aerofly FS? Even SimBrief in their map shows straight lines. Where does the curvatures come from? Is that something SimBrief or Missiongerät can generate?

    As a side note, Jugac64 , I created my first post on Flight-Sim.org and I have attached your .app bundle. Let me know when you have it that i delete from my post.

  • Where does the curvatures come from? Is that something SimBrief or Missiongerät can generate?

    Actually the Missionsgerät has some pretty complicated method of getting the curvature of fly-over and fly-by waypoints straight... ahem, round. ^^

    Maybe Claude can take a look at this file...

    aerofly-missions/src/Export/GeoJson.ts at main · fboes/aerofly-missions
    The Aerofly Missionsgerät converts simulator flight plan files for Aerofly FS 4 (main.mcf and tmc), Microsoft Flight Simulator (pln), X-Plane (fms), GeoFS (…
    github.com

    ...and be inspired for a Python version of this idea?

    Actually the curves have something to do with the speed of the aircraft and its regular turn time.

  • Oh, Armitage you are right, the curves must be very difficult to draw.

    SageMage I downloaded the new version from Github and tried it, the interfase is looking better. I tried to record the data using arm and manual recording, but my data is empty. If you don't know why this happens, I will check it with Claude.

    I loved the "Follow Aircraft" feature, I didn't knew how to do it. Your version is much better now! I hope you continue improving it. Thank you!

    Best regards, Juan