I wrote an app to connect Aerofly fs4 to SayIntentions ATC

  • Hello Everyone,

    First time to this forum. I have been using Aerofly fs4 in VR because it is by far the smoothest for my machine than MSFS2024 and Xplane12, but I was missing an in cockpit moving map and ATC. I ended up creating a web based application that does both. Has a moving map and radio interface that will send frequencies to SayIntentions and will display in VR (using tools like OS Overlay). It can also work on a tablet by making a small change to the JavaScript (I documented that in the instructions file). I have a couple videos on youtube that demos the application (I had to do two because of the length) and you can download the files from my GitHub page. The core functionality works just fine but I will be making updates as time goes on. Just wanted to share if anyone is interested.

    GitHub

    GitHub - sshaper/aeroflyToSayIntentions
    Contribute to sshaper/aeroflyToSayIntentions development by creating an account on GitHub.
    github.com

    YouTube Video 1

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

    YouTube Video 2

    External Content www.youtube.com
    Content embedded from external sources will not be displayed without your consent.
    Through the activation of external content, you agree that personal data may be transferred to third party platforms. We have provided more information on this in our privacy policy.

  • Wow! Thank you very much, the app looks great, and thanks for the videos, very good explanations.

    Instant fork and I am very happy the script was useful to you. Now with the SDK DLL we can expand your app to directly talk to the sim.

    Best regards, Juan

    Edited once, last by Jugac64 (August 7, 2025 at 1:21 PM).

  • Thank Juan,

    I messed with the SDK DLL that I found and I could not get it working for me so I wrote the whole web interface just using Python. Interacting directly with the plane radios would be great. For me, I would probably still want to use my web interface because in VR it makes changing and finding frequencies easier, but having the cockpit also respond would be great.

    Just FYI. I change the interface slightly the map overlays are now radio buttons instead of a dropdown. The dropdown was not working well in VR. Also, I removed the map button from the map view and radio button from the radio view. If the user is on that page they don't need a button to go there. Also updated the data file (ongoing process) with better frequencies and SkyVector links.

    Thanks for the reply.

    Scott

  • Thank Juan,

    I messed with the SDK DLL that I found and I could not get it working for me so I wrote the whole web interface just using Python. Interacting directly with the plane radios would be great. For me, I would probably still want to use my web interface because in VR it makes changing and finding frequencies easier, but having the cockpit also respond would be great.

    Just FYI. I change the interface slightly the map overlays are now radio buttons instead of a dropdown. The dropdown was not working well in VR. Also, I removed the map button from the map view and radio button from the radio view. If the user is on that page they don't need a button to go there. Also updated the data file (ongoing process) with better frequencies and SkyVector links.

    Thanks for the reply.

    Scott

    Hi Scott! nice to meet you. Don't worry, SDK DLL will be available soon with documentation to do the integration.

    Best regards, Juan

  • Hello Everyone,

    Major interface change functionality is mostly the same. The radio page was removed and the coms were moved to the map page. There is no longer a hover over the airport icon. However when you click on a airport you get a dialog box were you can select the frequency for com 1 or com 2 by clicking the button and that frequency will automatically be added to the standby side of the com. Much easier to use in VR. The videos still show how most of it works just no more radio page and different on how you add frequencies.


  • Hi Scott, I haven’t study too much Sayintentions, but can you explain a little, does the app only need to interact with the COMs in the aircrafts? Anything else? Without modifying your app flow, what would be useful that it do with the aircraft? Changing the COMs and anything else? I would like to try to add this if you point me what it can be done.

    Best regards, Juan

  • Hi Juan,

    This website explains it https://sayintentionsai.freshdesk.com/support/soluti…light-simulator

    Bascially you just have to get the data from the the sim and write it to the input file simapi_input.json. That is all I did. I write to the file about every .75 seconds. I don't mess with the output side because I cannot talk to aerofly. You have to have sayintentions installed on your computer for it to work as it writes to a file in the program that then gets read. I of course have it so I could test your app if you want. For the data needed you already have it from Aerofly. My Python file, which is mostly yours, gets the data and sends it. It is on my github page at https://github.com/sshaper/aerofl…to_websocket.py

    Here are the json values for the say intentions input.

  • I think you already have it where if you change the radio, transponder, and turn comms on or off in the aerofly aircraft it will send those new values out. All that has to be done is write to the simapi_input.json file and sayintentsions would see it.

  • I added two issues onto the Github repo. Is that a good way to communicate with you, or better to comment here?


    Thanks!

    Just saw the issues on GitHub good points I will look into them. I replied via GitHub. Now that I know people may be doing that I will check. If it is not too much of a pain if you could put the issue in GitHub and just give me a note here saying you did that woud be best. But if you only want to fool with one Github would be best.

  • Just saw the issues on GitHub good points I will look into them. I replied via GitHub. Now that I know people may be doing that I will check. If it is not too much of a pain if you could put the issue in GitHub and just give me a note here saying you did that woud be best. But if you only want to fool with one Github would be best.

    Sent you a couple of pull requests to increase compatibility with MacOS platforms. It's a nice tool with a better graphics than my rewinger!