News:

Precision Simulator update 10.188 (22 June 2026) is now available.
Navburo update 13 (23 November 2022) is now available.
NG FMC and More is released.

Main Menu

SmartRunway, SmartLanding: new addon (SRSL-PSX) v 1.0

Started by Avi, Fri, 15 May 2026 20:20

Avi

****************** Latest version *****************
SRSL-PSX v 1.0 full package (June 20 2026)
SRSL-PSX v 1.0 jar file (June 20 2026)

New users need to download only the full package. There is no need to download the jar file.
Users who already download the zip file can download only the jar file but the zip file contains an updated user guide.
************************************************

Hi all,

After six months of work (since being inspired by a post of same747, and I won't comment about the rest of the thread  ;D ), I am proud to present my new addon: SmartRunway, SmartLanding for PSX.

The SmartRunway, SmartLanding (SRSL) system is an advanced package by Honeywell to an earlier expand package named Runway Awareness and Advisory System (RAAS) to their Enhanced Ground Proximity Warning System (EGPWS).

The purpose of the system is to increase crew awareness by giving them aural and visual calls about their position and situation on ground and at low altitude before landing and by this to reduce risks of runway incursions, runway excursions and un-stabilized approaches.

The SRSL system consists of 5 subsystems:
  ·  Runway Awareness and Advisory System (RAAS)
  ·  Stabilized Approach Monitor
  ·  Altimeter Monitor
  ·  Takeoff Flaps Configuration Monitor
  ·  Long Landing Monitor

The most common (routine) calls are: 'approaching runway' (on ground and in flight), 'on runway', 'distance remaining' after landing and 'runway end'. The rest of the calls (17 of them) will be played when things are not going as they should be.
For more information about the system and its calls, please read the user guide.

SRSL-PSX was developed (in Jave) based on a document, probably an old one and not the latest version of the real system, I found on the web. In this version there are no taxiways database so from SRSL-PSX point of view, if the aircraft is not on a runway, it is on a taxiway (on the ground of course).

SRSL-PSX comes with two sets of voices: male and female.
The calls in SRSL-PSX are played at three different volume levels: EGPWS caution and warning level ("0" in SRSL-PSX), EGPWS Mode 6 level (-6dB from the "0" level) and one call (taxiway takeoff) at "0" level +3dB.

SRSL-PSX has many options (all of them are manipulated via the CDU). Some of the options are:
  ·  Enable / Disable for each subsystem (five in total)
  ·  Voice Gender (Female / Male) for all calls
  · Unit for RAAS calls (Feet / Meters)
  · Play unit at initial distance remaining call (Yes / No)
  · Selection when to start the distance remaining calls after landing or RTO (fixed distance from the end of the runway or after 50% of runway length)
  · Setting length for a short runway takeoff calls
  · Setting length for a short runway landing calls
  · Override GPS interferences
and more.

Each setting page in the CDU has its own help pages where you can see the valid entries for the various options.

If you run SRSL-PSX and CMC-PSX simultaneously and conduct EGPWS ground or confidence test in CMC-PSX, SRSL-PSX will be part of the test (SRSL-PSX audio files will be played). CMC-PSX and SRSL-PSX will communicate one with each other via PSX for this. For more information refer to the CMC-PSX thread.

SRSL-PSX was tested on PSX alone. it is possible that users who use scenery generators may have some problems with distance remaining calls and what they see "outside". For this I added two variables where you can set an offset and try to fix it yourself. You can also adjust a little bit the "0" volume level of the audio system.
Again, for more information, please read the user guide.

SRSL-PSX works with PSX 10.186 and above.

Installation & starting.
Download the zip file, open it wherever you want, start SRSL-PSX.jar, make sure IP address and port number are correct and CDU is set as you like and connect to the PSX Main server. The settings will be saved in the ini file.

Edit June 20 2026: v 1.0 is officially up. for more information read here.

That's it.

Have fun with it,
Avi Adin
LLBG

Mariano


macroflight

One test flight so far. Amazing!

My notes:

- A typo in the "ON TAXIWAYY" EICAS message
- It seems impossible to use a port number other than 10747, even if I put it in the config file

I'm already trying to figure out how this could be used in shared cockpit. :)

I think the best way would be to run one copy of SRSL-PSX in each sim (so it can play the sounds on the local speaker/headset). But that will cause problems since all copies of SRSL-PSX will try to set up a CDU interface and try to show messages on the EICAS (and possibly to other changes to PSX state that I'm not aware of).

Would it be possible to get a "slave mode" added, where SRSL-PSX would get all its settings from the config file and the Java GUI (i.e the CDU interface is not created in PSX) and also not make any changes to PSX, especially not create EICAS messages?

Then we could run one master SRSL-PSX and 1 or more slaves in the other simulators, everyone would get audio warnings through their own speakers and everyone would see EICAS alerts that the master SRSL-PSX sends to the shared PSX sim.

macroflight

This post simply serves to bump this amazing addon thread back up after posting my own releases today :)

Gary Oliver

This is a brilliant addon... one request for those with multiple PC setups, which also will fix the problem for Macroflights shared cockpit usecase..

Can you send an 'Addon=SRSL-PSX:PLAY_AUDIO:1' or 'Addon=SRSL-PSX:PLAY_AUDIO:2' to the PSX network every time you play one of the audio files?  This means we can use PSX Sounds to play the audio through the correct audio device/pc and then run SRSL on any PC we want.

Hardy Heinlin

Hi Avi,

thanks again for your great work.

Regarding the database: Does your add-on just need the data of the nearest airport? Just a single airport at a time? If so, I might implement another demand Qs in PSX that automatically sends this airport's runway data to the network whenever the data has changed. Would that be helpful? This tiny data probe wouldn't infringe any database copyright.

PSX already has an EGPWS "active runway" data output to the network. It's an algorithm based on aircraft position relative to the runways in the vicinity and refers to ground and approach operations. The data includes the airport's ICAO code. I could use this ICAO code reference to read all runways of this airport and put them in a Qs string separated by semicolons. What variables are required? Runway length, runway ID, lat/lon of takeoff position?

Or is the data of that single "active runway" (which PSX sends out) already sufficient? Obviously, the "landing distance available" always refers to the active runway and no other runways of that same airport. Same is valid for the "approaching runway" message etc.


Regards,

|-|ardy

Avi

Hi all,

First of all, thanks.

I uploaded a quick fix:
  · Typo fixed
  · Port number can be change

About the other things I need to think about how to do it.

One thing you should be aware of: this addon took me eight months to develop mainly because I have very little spare time. I have few hours on the weekend anf that's it so you need to be patient with modifications since it will take time.

Thanks again,
Avi Adin
LLBG

B747-400

Hi Avi,

excellent!  8)
Thx a lot for this add-on.

BR
Hans

Avi

Hi Hardy,

(Sorry for the "late" reply. I started answering, something "pop up" and then I had to go to work - did I mention time problem :) ? ).

When I scan the runways file, I read all runways in 15nm radius of aircraft position just to be on a safe side (but only the  runways of the near by airport should be ok - unless there are airports in very close proximity).

I scan the file on the ground and when descending 1800 feet RA if aircraft is more than 10nm from last reading position (initially set to 0N, 0E).

I do need all the runways in the airport since I can approach (on the ground) any of them (even just for crossing), not just the "active runway" (what if there isn't one?).

My file has ICAO code (only to be displayed as part of a message), runway ID, the begining of the runway (takeoff position, not landing coordinmates as it is in PSX - but I can "up side down" it ) and displaced threshold.
Length and heading are calculated by me.

Such Qs code can be nice and solve the need of my file.

Thanks,
Avi Adin
LLBG

Hardy Heinlin

#9
OK, I'll put that Qs on my todo list :-)

You can be sure that the active runway in the PSX EGPWS is always correct – on approach and on the ground. Yes, your add-on may calculate the exact runway in its own way, and the result of its calculation may disagree with PSX for a moment when the aircraft is moving or turning, but it certainly won't disagree in the determination of the airport. So I still think that all runways of the active airport should suffice, i.e. of the active airport that the PSX EGPWS is currently using for its terrain clearance floor warning system. What's your opinion? Do you agree? Also, your add-on actually simulates an EGPWS module that should be "wired" with the existing EGPWS box in PSX. Why should the PSX EGPWS look at San Francisco and your EGPWS look at Oakland? :-)

So my suggestion is this: PSX will send all runways of the active airport, not the runways of the other irrelevant airports. E.g. when approaching KSFO, it will send all runways of KSFO and not those of KOAK.


Cheers,

|-|ardy

samer747

Quote from: Avi on Fri, 15 May 2026 20:20After eight months of work (since being inspired by a post of same747, and I won't comment about the rest of the thread  ;D ), I am proud to present my new addon: SmartRunway, SmartLanding for PSX.


I'm glad that I can be inspiring sometimes  ;)

Thanks Avi for this amazing addon, great work


macroflight

Quote from: Avi on Sat, 16 May 2026 13:25One thing you should be aware of: this addon took me eight months to develop mainly because I have very little spare time. I have few hours on the weekend anf that's it so you need to be patient with modifications since it will take time.

No worries. After having tested this during a few flights I can definitely say this will become a permanent part of my sim. Well worth waiting for. :)

I think Gary's solution is better than what I suggested. The only code change you would need to make would be something like this:


Today:

play("Claudine\01.wav")


After the change:

if $MODE == "normal" {
  play("Claudine\01.wav")
} else {
  send_psx_network_message("addon=SRSL-PSX:PLAY_AUDIO:Claudine:01.wav")
}

(and of course add MODE to the config file...)



PSXSounds would then get the addon= message and play the requested audio file.

In Gary's sim, multiple copies of PSXSounds would run on multiple computers feeding different speakers in the cabin. They would all get the same addon message and play the same sound at the same time.

In our shared cockpit setup, we would typically run one PSXSounds in each sim. They would also all get the same addon message and play the same sound at the same time.

In both cases, there would only be a single copy of SRSL running that would set the EICAS messages, read position from PSX, etc.

macroflight

On another subject - as a purely theoretical exercise 8) I wrote a script that can extract the data needed from a Navigraph database (which Navigraph subscribers can download) and save in the SRSL Runways.data format.

As far as I can tell, using your own Navigraph data subscription to download this data and use it in your own flight sim for non-professional purposes is acceptable, so I think this tool is OK to use. But that is something the user needs to decide for themselves. See e.g https://developers.navigraph.com/docs/general/restrictions

voipmeister

Seb

Will

Thanks, Avi! This looks really great.

I'm having an issue though, probably due to my own ignorance.

SRSL-PSX set up and connected to PSX, and I can verify this by pulling P7 D-9, and hearing "Runway awareness not available" and seeing the appropriate visual messages. When I push P7 D-9 back in, I hear "Runway awareness okay - feet" and I see the appropriate visual message.

The problem is that none of the messages activate. I can enter a runway, and line up and wait on a runway, and I don't hear anything. I can also take off on a taxiway, or with 0 flaps, and I don't get any caution messages. I don't get any messages at all.

I've tried this at two different airports (with the same results), and I checked to make sure each airport's runway lengths are present and correct in the AIRPORT RUNWAYS DATA tool. It looks like the airports exist in the Runways.data file, but the SRSL messages aren't triggering.

What can I do to troubleshoot?

Will /Chicago /USA

JG

Wow, how exciting all this continued and new development is. With so much activity from so many contributors, now seems an appropriate time for a novice like myself to thank all you clever people for your continued generosity with your time and knowledge to enhance the experience that PSX is. While I continue to learn about operating  my sim properly, I keep it simple, but I will in time be wanting all these fantastic developments as my skills improve. Thank you all, it is deeply appreciated.
J.G.

Avi

Hi Will,

Which airports did you try?

If the airports / runways in the file, maybe there is a problem with reading the file. There shouldn't be a problem but who knows.

Did you try to close SRSL-PSX and start again?

Cheers,
Avi Adin
LLBG

Will

It seems to be a problem when the aircraft is on the ground. I get the messages when the aircraft is airborne.

Will /Chicago /USA

Avi

Avi Adin
LLBG

Will

KMSP is an example. No notifications on the ground, but I get notifications in the air. I don't know if this is meaningful, but I'm using Gary's app to use MSFS as a scenery generator. Maybe that's causing some kind of interference?
Will /Chicago /USA