Skip to content

Commit

Permalink
Adding compatibility information, resolves #47
Browse files Browse the repository at this point in the history
server parameter description removed
compatibility chapter reorganised
auto parameter changes
reporting and link to server repo revised
credits updated
  • Loading branch information
kusterjs committed Dec 12, 2024
1 parent 6fe49e4 commit 2df0ff8
Showing 1 changed file with 23 additions and 29 deletions.
52 changes: 23 additions & 29 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,25 +19,6 @@ A client-server solution is used to:

The plugin sends requests to the server acting as the central interface to manage all transponder code assignments. It will evaluate any request received via the plugin based on the configuration of FIR and airport code ranges. You can review the current configuration status and the latest usage statistics on https://ccams.kilojuliett.ch/.

### What parameters are considered?
In order to determine the most appropriate transponder code for a specific flight, the server will use information from the plugin sent including:
* the controller call sign
* origin
* destination
* flight rule
* aircraft position
* the controller connection type

The server will identify the next available transponder code based on the airport (1st priority) and FIR (2nd priority) transponder code list, excluding:
* any non-discrete (ending with 00) codes
* any code already used by a pilot on the network
* any code already used and detected by a plugin user
* any code assigned to an aircraft and detected by a plugin user
If the aiport and FIR transponder codes are all exhausted, or if no matching entry in any of these lists can be found, a random transponder code outside the preferential range will be used.

### Sweatbox and local FSD Server
Requests of simulated aircraft (sweatbox session, or from your local FSD server) are flagged and will be handled separately by the server. This offers the same experience while not connecting to the live VATSIM network (although an internet connection is required for the communication to the CCAMS server). The plugin can therefore be used for training session on sweatbox without restrictions. The CCAMS server will make sure that requests from live and simulated traffic will not interfere with each other.

## EuroScope installation
* Load the plugin
* Navigate to the EuroScope general settings
Expand All @@ -46,6 +27,19 @@ Requests of simulated aircraft (sweatbox session, or from your local FSD server)
* Remove the string of the field "Squawk code for S-mode transponders" (to ensure transponder code 1000 is only assigned by the plugin logic)
* Update your tag and list definitions and replace the EuroScope default tag items and functions by the ones of the plugin

All airports starting with one of the following combination of letters are considered Mode S capable:
```EB,ED,EH,EL,EP,ET,LD,LF,LH,LI,LK,LO,LR,LSZR,LSZB,LSZG,LSGC,LSZH,LSGG,LZ```, excluding ```EPCE,EPDA,EPDE,EPIR,EPKS,EPLK,EPLY,EPMB,EPMI,EPMM,EPOK,EPPR,EPPW,EPSN,EPTM```

## Compatibility

### EuroScope
This plugin provides full compatibility with EuroScope until version 3.2.3.

EuroScope version 3.2.4 and later do not correctly report the aircraft equipment (as provided by the pilot via the flight plan), which will result in no Mode S compatibility detected for any aircraft. You can still use the plugin with these versions, but discrete codes will be assigned in all cases. It is recommended to deactivate the automatic transponder code assignment. A corresponding message will be raised by the plugin upon startup.

### Sweatbox and local FSD Server
Requests of simulated aircraft (sweatbox session, or from your local FSD server) are flagged and will be handled separately by the server. This offers the same experience while not connecting to the live VATSIM network (although an internet connection is required for the communication to the CCAMS server). The plugin can therefore be used for training session on sweatbox without restrictions. The CCAMS server will make sure that requests from live and simulated traffic will not interfere with each other.

## Functionalities
This plugin provides capabilities/functionalities to:
* interpret both the FAA and ICAO flight plan format
Expand All @@ -64,7 +58,7 @@ This plugin provides capabilities/functionalities to:
* Assigned squawk: the assigned transponder code, includes colour indication for:
* disagreement between assigned and set transponder code (information colour)
* incorrect use or assignment of transponder code 1000 (redundant colour)
* Mode S quawk error: Indicator of incorrect use or incorrect assignment of transponder code 1000. If such an incorrect use is detected, the field will display "MSSQ" in information colour.
* Mode S quawk error: Indicator of incorrect use or incorrect assignment of transponder code ```1000```. If such an incorrect use is detected, the field will display ```MSSQ``` in information colour.
* Transponder type: displays ```S``` for Mode S equipped aircraft, otherwise ```A```
* EHS Heading: Reported magnetic heading of the aircraft
* EHS Roll Angle: Reported roll angle (```L``` for LEFT and ```R``` for RIGHT + value in degrees)
Expand All @@ -82,26 +76,26 @@ This plugin provides capabilities/functionalities to:
### Commands
* ```.help ccams``` provides a list of all available plugin commands
* ```.ccams ehslist``` displays the Mode S EHS list
* ```.ccams auto``` enables/disables automatic transponder code assignment for IFR airborne aircraft
* ```.ccams auto [seconds]``` enables/disables automatic transponder code assignment for IFR airborne aircraft, the optional value sets the refresh rate (in seconds) to scan for new assignments
* ```.ccams tracking``` enables/disables transponder code validation when starting to track a flight
* ```.ccams reload``` reloads local (refer to plugin settings) and remote (mode S capability and plugin version) config data

### Plugin settings
### Settings
The Plug-in settings file (check the file location via EuroScope > other settings > Settings files setup) can be used to change some of the plugins default settings. Use the format ```CCAMS:[setting name]:[setting value]```.
* ```codeVFR```: your generic code to be assigned to VFR aircraft (default ```7000```)
* ```acceptFPLformatICAO```: to allow/ignore Mode S capabilities of flight plans with the equipment code specified according ICAO format (default ```1```)
* ```acceptFPLformatFAA```: to allow/ignore Mode S capabilities of flight plans with the equipment code specified according FAA format (default ```1```)
* ```AutoAssign```: to enable/disable the automatic transponder code assignment of IFR airborne aircraft (default setting ```1```)
* ```AutoAssign```: the refresh rate (in seconds) to search and perform automatic transponder code assignment of IFR airborne aircraft (default setting ```10```, deactivate with ```0```)

If you operate in a region not equipped for transponder code ```1000``` or just do not wish to assign any transponder code ```1000```, set both ```acceptFPLformatICAO``` and ```acceptFPLformatFAA``` to ```0```. This will result in the plugin using discrete transponder codes only.

## Changes / Improvements / Reports
Local ops/tech staff may create an [issue](https://github.com/kusterjs/CCAMS/issues) on this GitHub to request a configuration change, to ensure compliance with regional and local transponder code ranges and schemes.
For any kind of report, please open an [issue](https://github.com/kusterjs/CCAMS/issues) for this repo.

The current server configuration is available on https://ccams.kilojuliett.ch/.

All airports starting with one of the following combination of letters are considered Mode S capable:
```EB,ED,EH,EL,EP,ET,LD,LF,LH,LI,LK,LO,LR,LSZR,LSZB,LSZG,LSGC,LSZH,LSGG,LZ```, excluding ```EPCE,EPDA,EPDE,EPIR,EPKS,EPLK,EPLY,EPMB,EPMI,EPMM,EPOK,EPPR,EPPW,EPSN,EPTM```
### Assigned Transponder Codes Configuration
The assigned transponder code (ranges) are a matter of the server configuration. For more details, please visit the [CCAMS Server](https://github.com/kusterjs/CCAMS-server) repo.

## Credits
This plugin includes Mode S functionalities as introduced by the ModeS by Pierre Ferran [pierr3/ModeS](https://github.com/pierr3/ModeS). It's intending to replace any version of the ModeS plugin, also later versions maintained by Oliver Gruetzmann [ogruetzmann/ModeS](https://github.com/ogruetzmann/ModeS).
This plugin includes Mode S functionalities as introduced by the ModeS by Pierre Ferran [pierr3/ModeS](https://github.com/pierr3/ModeS). It's intending to replace any version of the ModeS plugin, also later versions maintained by Oliver Gruetzmann [ogruetzmann/ModeS](https://github.com/ogruetzmann/ModeS).

Thanks to [@herver](https://github.com/herver) for the contribution https://github.com/kusterjs/CCAMS/pull/52 to improve the compatibility on non-Windows plattforms (through Wine etc.).

0 comments on commit 2df0ff8

Please sign in to comment.