SimObjects
Note
This information is provided for customization. You get a finished VDGS device with your license, ready to be copied into your airport project without requiring any additional effort.
Overview
VDGS display units must be configured as standard SimObjects with custom VDGS parameters added to sim.cfg
.
[fltsim.n] sections
Each VDGS unit must have a separate [fltsim.n]
section in sim.cfg
containing at least the required parameters listed below.
[vdgs_defaults] section
To avoid unnecessary repetition, both required and optional [fltsim.n]
settings (except title
) can have custom default values. They can be set with [vdgs_defaults]
section. If a setting is not found under [fltsim.n]
, then the value in [vdgs_defaults]
is used. If that is missing too, then internal defaults are used. See Example.
Comments and multi-line values
Everything after ;
or //
is ignored on every line – this lets you add comments.
If a line ends with \
, then the next line is assumed to be a continuation, for example:
vdgs_stops=-2.4 CRJ2 E135 E145 EMBRAER_170_FAMILY AIRBUS_A318 AIRBUS_A319, \
-0.2 AIRBUS_A320 BOEING_737-700 CRJ7, \
2.5 BOEING_737-900 BOEING_737-800 CRJ9 EMBRAER_190_FAMILY
Required parameters
- title=<str>
Unique title of the device. Must start with “noolaero VDGS”, followed by airport ICAO code and device ID. Device ID may be any string containing ASCII characters.
Example:
title=noolaero VDGS NZAA G30
- vdgs_id=<str>
Unique group ID assigned to your airport and used to tell device groups apart. Value provided with your license.
- vdgs_version=<str>
Version of the module that this SimObject was built for.
Example:
vdgs_version=2.1.0
Optional parameters
- vdgs_system=<name>
Logic engine for the device to use:
Name Description inop
Inoperative device, will not be simulated screen
Marks the SimObject as a subassembly of its parent object, inheriting its system safedock
Any type of Safedock device (default) apis_1
APIS device with single-line display apis_2
APIS device with double-line display rlg_206
RLG GIS 206 aida
ANSE AIDA-1 honeywell
Honeywell devices inogon
Inogon moiré-pattern based devices traffic_light
Generic distance-based traffic light Every logic engine comes with its own device defaults and implementation of tracking and status messages.
- vdgs_features=<list>
Comma-separated list of optional features to enable on a device:
Name Description none
Explicitly disables all features chocks
Ground crew alerts when chocks have been set after you stop and turn off beacons to signal shutdown stand_number
Shows stand ID in standby (customize with vdgs_stand
)standby_time
Displays current time in standby block_time
Show on-block and off-block time (AIBT / AOBT) after arrival and on departure startup
Enables A-CDM startup information (TOBT, TSAT, etc) local_time
Shows all device times in local timezone (by default they are in UTC) time_suffix
Shows timezone suffix where available (UTC, Z or LT) countdown_hhmm
Shows TOBT/TSAT/etc countdowns in +/-H:MM format instead of minutes (on compatible devices) Default values
The following features are supported and enabled by default:
vdgs_system Supports Default inop
none
none
screen
none
none
safedock
none
,chocks
,stand_number
,standby_time
,block_time
,startup
,local_time
,time_suffix
none
apis_1
,apis_2
none
,chocks
,stand_number
,standby_time
,block_time
,startup
,local_time
,time_suffix
chocks
,stand_number
,standby_time
,block_time
rlg_206
none
none
aida
stand_number
stand_number
(always on)honeywell
none
,stand_number
,block_time
,local_time
,time_suffix
stand_number
,block_time
inogon
none
none
traffic_light
none
none
Please note that capabilities are further restricted by individual subversions of docking devices, eg Safedock type 3-9 has too small screen to display startup information.
Example:
vdgs_features=block_time, stand_number
- vdgs_screen=<title> (deprecated)
Title of the screen SimObject, if screen is spawned separately from the docking device. Leave undefined if the device already contains a screen.
Example:
vdgs_screen=noolaero VDGS ESSA 64 screen
- vdgs_screens=<keyword> <title>, …
One or more pairs of keywords and SimObject titles to spawn as screens. Titles must be enclosed in quotes. Screens are spawned and despawned depending on the current condition of a docking device.
Example:
vdgs_screens=GUIDANCE "noolaero VDGS EGKK T2-18 guidance", STANDBY "noolaero VDGS EGKK T2-18 standby", STARTUP "noolaero VDGS EGKK T2-18 startup""
Keyword Spawned when… FULL
Always spawned when the device is powered on (for screens that contain the full device) BASIC
Spawned when the device is powered on in any non-datalink mode GUIDANCE
Device is providing docking guidance ARRDEP
Airplane just arrived or departed
(seevdgs_arrival_timeout
andvdgs_departure_timeout
)STANDBY
Device is in standby STARTUP
Datalink has startup information to show - vdgs_alt=<m>
Forces SimObjects to the specified altitude (in meters above ground).
Landmarks
category SimObjects are supposed to stay suspended in the air, but MSFS occasionally glitches and spawns them on the ground. Switching from internal view to external view usually causes MSFS to reset them to correct altitude, but SimObjects may permanently stay on the ground. To mitigate this issue, VDGS module can force SimObjects to a predefined altitude if they spawn on the ground.Example:
vdgs_alt=4.5
- vdgs_stand=<id>
Stand ID for devices that are capable of showing it. Uppercase ASCII string. When left undefined, the ID is derived from device title (see
title
).Example:
vdgs_stand=A12
- vdgs_nose=(<lat>, <lon>, <hdg> | auto )
Latitude, longitude and true heading of the location where nose wheel should end up, or
auto
to automatically use the parking node in front of the device.Hard-coded values are intended for overlapping MARS layouts where some devices may not have a matching parking node.
Examples:
vdgs_nose=46.229853, 14.455198, 37.02
vdgs_nose=auto
If left undefined, then the default behavior is
auto
.- vdgs_door=(<offset> | auto)
Enables door alignment. This is intended for parking stands with T-jetbridges that are unable to move sideways and where docking device must align airplane door with the jetway instead of guiding nosewheel to a predefined spot on the ground and letting jetway drive up to it.
Behavior for devices with
vdgs_version=4.0.0
and higher:- If set to
auto
, then jetway’s position is read from the simulator in real time for alignment.
- If set to
- If
vdgs_door
contains a numeric value, such asvdgs_door=-0.2
then that is additional offset added to detected jetway door position, where negative values are towards the tail and positive values are towards the nose.
- If
Behavior for devices below version 4.0.0:
- If set to a numeric value, then that means offset in meters from default nosewheel position, where positive values are towards the device and negative values are away from it.
This setting is ignored on airplanes with no suitable door.
Examples:
vdgs_door=-4.2
vdgs_door=auto
- vdgs_scan=<capturing>, <tracking>, <closing>, <stop_short>, <stop>, <too_far>, <overshoot>, <width>, <turn>
Scan area. Values from
capturing
toovershoot
describe length of the scan area andwidth
defines its width. If aircraft leaves the scan area, then the device gets reset. See Docking stages for visual depiction.Longitudinal thresholds
Value Default Description capturing
120.0 m Device becomes active and starts looking for aircraft tracking
60.0 m Aircraft gets detected and device starts providing guidance closing
20.0 m Device switches to final countdown, showing digital distance readout stop_short
4.0 m Earliest acceptable stop position: if aircraft stops after this, then docking ends stop
0.2 m Device shows STOP
messagetoo_far
-1.0 m Stopping after this threshold triggers TOO FAR
messageovershoot
-10.0 m Furthest edge of the scan area: if aircraft passes this, then the device turns off Lateral thresholds
Value Default Description width
20.0 m Width of the scan area turn
0.2 m Maximum offset from centerline before left or right turn is commanded. Default values
Default values depend on device type set with
vdgs_system
:vdgs_system vdgs_scan default value safedock
120.0, 60.0, 20.0, 4.0, 0.4, -1.0, -10.0, 20.0, 0.2
apis_1
,apis_2
100.0, 60.0, 15.0, 1.0, 0.2, -1.0, -10.0, 20.0, 0.2
rlg_206
120.0, 50.0, 40.0, 1.0, 0.2, -1.0, -10.0, 20.0, 0.4
aida
150.0, 90.0, 30.0, 1.0, 0.4, -1.0, -10.0, 20.0, 0.2
honeywell
120.0, 60.0, 35.0, 0.0, 0.2, -1.0, -10.0, 20.0, 0.2
inogon
100.0, 100.0, 5.0, 5.0, 0.0, -5.0, -20.0, 20.0, 0.2
traffic_light
100.0, 80.0, 5.0, 0.4, 0.4, -10.0, -10.0, 20.0, 0.2
- vdgs_speeds=[<dist> <speed>], [<dist> <speed>], …
A list of maximum allowed speed before
SLOW DOWN
message is triggered. Restrictions are defined in pairs wheredist
is distance from target andspeed
is maximum speed in meters per second.Default:
vdgs_speeds=30.0 4.0, 20.0 3.0, 10.0 2.0
. This means that closer than 30 m, max allowed speed is 4 meters per second. With less than 20 m to go, it’s 3 m/s, and below 10 m it’s 2 m/s. These are also the default values.- vdgs_stops=[<offset> <type> <type> …], [<offset> <type> <type> …], …
A list of custom offsets applied to aircraft types, relative to
vdgs_nose
.offset
is the offset in meters to apply and is followed by one or more ICAO aircraft type designators (type
). Positive offset values are towards the device, negative values away from it.Example:
vdgs_stops=-2.0 AT72 AT73 AT75 AT76, 1.5 B752 B753
This shifts all types of ATR-72 away from the device by 2 meters and brings all B757 family aircraft 1.5 m closer.
Type groups are also supported. They are defined in
noolaero-vdgs.cfg
, their name must be 5 characters or longer, and you can use them like regular type codes. The example above can be simplified to:vdgs_stops=-2.0 ATR_72, 1.5 BOEING_757
The first matching stop offset is used (in the order they are defined). For example,
vdgs_stops=-2.0 A319, -1.0 AIRBUS_A320_FAMILY
makes A319 stop 2 m before default stop position and all other A320 family airplanes 1 m before default stop. In comparison,vdgs_stops=-1.0 AIRBUS_A320_FAMILY, -2.0 A319
already catches all A320 family airplanes at 1 m before stop and A319 offset at 2 m gets ignored.For clarity, long lines can be broken apart with
\
(see multi-line values).- vdgs_capture_hdelta=<deg>
Maximum heading offset at capture. Aircraft heading must be less than
deg
away from target heading (defined invdgs_nose
) to get captured.Default:
vdgs_capture_hdelta=10.0
(10 degrees).- vdgs_stop_delay=<sec>
Delay in seconds before an aircraft is considered stopped. When an aircraft stays still within
stop_short
andtoo_far
thresholds for more than this delay, then VDGS device considers docking completed and shows appropriate message (STOP OK
,OK
, orTOO FAR
depending on stop position).Default:
vdgs_stop_delay=3.0
(3 seconds).- vdgs_ok_timeout=<sec>
How long in seconds to show
OK
docking assessment when the aircraft stops right on target. Device switches to arrival timer after the timeout.Default:
vdgs_ok_timeout=5.0
(5 seconds).- vdgs_complete_timeout=<sec>
How long in seconds to show docking assessment after the aircraft stops too early or too far away from optimal target. Device switches to arrival timer after the timeout.
Default:
vdgs_complete_timeout=20.0
(20 seconds).- vdgs_arrival_timeout=<sec>
How long in seconds to show arrival screen after docking assessment. For example, on-block time is shown during this window. Device switches off after the given time.
Default:
vdgs_arrival_timeout=180.0
(3 minutes).- vdgs_departure_timeout=<sec>
How long in seconds to show departure screen. This is used for showing off-block time as the aircraft is being towed away. Docking device switches off after the timer runs out.
Default:
vdgs_departure_timeout=180.0
(3 minutes).- vdgs_poweroff_delay=<sec>
Default poweroff delay in seconds before the device is powered off after docking completes and there’s nothing else to show.
Default:
vdgs_poweroff_delay=180.0
(3 minutes).- vdgs_text_speed=<sec>
Controls how quickly multi-part messages alterate, eg how long
B737
and-500
each stay on screen when showingB737-500
type.Default:
vdgs_text_speed=4.0
(4 seconds).- vdgs_text_slow=<sec>
Controls how long slowly alternating messages stay on screen, eg how fast time and stand numbers alternate in standby.
Default:
vdgs_text_slow=8.0
(8 seconds).- vdgs_text_fast=<sec>
Controls how long quickly flashing text stays on screen, used in multi-part error messages, eg
STOP
/TOO
/FAST
.Default:
vdgs_text_fast=2.0
(2 seconds).
Docking stages
This image depicts docking stages as defined with vdgs_scan
relative to target point set with vdgs_nose
.