mirror of
https://github.com/DCC-EX/CommandStation-EX.git
synced 2024-11-26 17:46:14 +01:00
Update ThrottleAssists.md
This commit is contained in:
parent
98af5c45ed
commit
91d36ae909
|
@ -5,16 +5,15 @@ Chris Harlow April 2022
|
||||||
There are a number of additional throttle information commands that have been implemented to assist throttle authors to obtain information from the Command Station in order to implement turnout, route/automation and roster features which are already found in the Withrottle implementations.
|
There are a number of additional throttle information commands that have been implemented to assist throttle authors to obtain information from the Command Station in order to implement turnout, route/automation and roster features which are already found in the Withrottle implementations.
|
||||||
These commands are new and not overlapped with the existing commands which are probabaly due to be obsoleted as they are over complex and unfit for purpose.
|
These commands are new and not overlapped with the existing commands which are probabaly due to be obsoleted as they are over complex and unfit for purpose.
|
||||||
|
|
||||||
Turnouts
|
# Turnouts
|
||||||
============
|
|
||||||
|
|
||||||
The conventional turnout definition commands and the ```<H>``` responses do not contain information about the turnout description which may have been provided in an EXRAIL script. A turnout description is much more user friendly than the cryptic "T123", and having a list helps the throttle UI build a suitable set of buttons.
|
The conventional turnout definition commands and the ```<H>``` responses do not contain information about the turnout description which may have been provided in an EXRAIL script. A turnout description is much more user friendly than the cryptic "T123", and having a list helps the throttle UI build a suitable set of buttons.
|
||||||
|
|
||||||
```<JT>``` command returns a list of turnout ids. The throttle should be uninterested in the turnout technology used but needs to know the ids it can throw/close and monitor the current state.
|
```<JT>``` command returns a list of turnout ids. The throttle should be uninterested in the turnout technology used but needs to know the ids it can throw/close and monitor the current state.
|
||||||
e.g. response ```<jT 1 17 22 19>```
|
e.g. response ```<jT 1 17 22 19>```
|
||||||
|
|
||||||
```<JT 17>`` requests info on turnout 17\
|
```<JT 17>``` requests info on turnout 17\
|
||||||
e.g. response ```<jT 17 T "Coal yard exit">``` or ```<jT 17 C "Coal yard exit">``\
|
e.g. response ```<jT 17 T "Coal yard exit">``` or ```<jT 17 C "Coal yard exit">```\
|
||||||
(T=thrown, C=closed)\
|
(T=thrown, C=closed)\
|
||||||
or ```<jT 17 C "">``` indicating turnout description not given.\
|
or ```<jT 17 C "">``` indicating turnout description not given.\
|
||||||
or ```<jT 17 X>``` indicating turnout unknown (or possibly hidden.)
|
or ```<jT 17 X>``` indicating turnout unknown (or possibly hidden.)
|
||||||
|
@ -24,8 +23,7 @@ Note: It is still the throttles responsibility to monitor the status broadcasts.
|
||||||
However, I'm not keen on dynamically created/deleted turnouts so I have no intention of providing a command that indicates the turnout list has been updated since the throttle started.
|
However, I'm not keen on dynamically created/deleted turnouts so I have no intention of providing a command that indicates the turnout list has been updated since the throttle started.
|
||||||
Also note that turnouts marked in EXRAIL with the HIDDEN keyword instead of a "description" will NOT show up in these commands.
|
Also note that turnouts marked in EXRAIL with the HIDDEN keyword instead of a "description" will NOT show up in these commands.
|
||||||
|
|
||||||
Automations/Routes
|
# Automations/Routes
|
||||||
====================
|
|
||||||
|
|
||||||
A throttle need to know which EXRAIL Automations and Routes it can show the user.
|
A throttle need to know which EXRAIL Automations and Routes it can show the user.
|
||||||
|
|
||||||
|
@ -38,8 +36,7 @@ Also note that turnouts marked in EXRAIL with the HIDDEN keyword instead of a "d
|
||||||
or ```<jA 13 A "description">``` for an automation.\
|
or ```<jA 13 A "description">``` for an automation.\
|
||||||
or ```<jA 13 X>``` for id not found
|
or ```<jA 13 X>``` for id not found
|
||||||
|
|
||||||
What's the difference?
|
## What's the difference?
|
||||||
-----------------------
|
|
||||||
|
|
||||||
A *Route* is just a call to an **EXRAIL ROUTE**, traditionally to set some turnouts or signals but can be used to perform any kind of EXRAIL function... but its not expecting to know the loco.
|
A *Route* is just a call to an **EXRAIL ROUTE**, traditionally to set some turnouts or signals but can be used to perform any kind of EXRAIL function... but its not expecting to know the loco.
|
||||||
|
|
||||||
|
@ -50,31 +47,27 @@ An *Automation* is a handoff of the last accessed loco id to an EXRAIL AUTOMATIO
|
||||||
Thus an Automation expects a start command with a cab id\
|
Thus an Automation expects a start command with a cab id\
|
||||||
e.g. ```</START 13 3>```
|
e.g. ```</START 13 3>```
|
||||||
|
|
||||||
Roster Information
|
### Roster Information
|
||||||
^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
The ```<JR>``` command requests a list of cab ids from the roster.
|
The ```<JR>``` command requests a list of cab ids from the roster\
|
||||||
e.g. responding ```<jR 3 200 6336>```
|
e.g. responding ```<jR 3 200 6336>```\
|
||||||
or <jR> for none.
|
or <jR> for none.
|
||||||
|
|
||||||
Each Roster entry had a name and function map obtained by:
|
Each Roster entry had a name and function map obtained by:\
|
||||||
```<JR 200>``` reply like ```<jR 200 "Thomas" "whistle/*bell/squeal/panic">
|
```<JR 200>``` reply like ```<jR 200 "Thomas" "whistle/*bell/squeal/panic">
|
||||||
|
|
||||||
Refer to EXRAIL ROSTER command for function map format.
|
Refer to EXRAIL ROSTER command for function map format.
|
||||||
|
|
||||||
Obtaining throttle status
|
### Obtaining throttle status
|
||||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
||||||
|
|
||||||
```<t cabid>``` Requests a deliberate update on the cab speed/functions in the same format as the cab broadcast.
|
```<t cabid>``` Requests a deliberate update on the cab speed/functions in the same format as the cab broadcast\
|
||||||
```<l cabid slot speedbyte functionMap>```
|
```<l cabid slot speedbyte functionMap>```
|
||||||
|
|
||||||
Note that a slot of -1 indicates that the cab is not in the reminders table and this comand will not reserve a slot until such time as the cab is throttled.
|
Note that a slot of -1 indicates that the cab is not in the reminders table and this comand will not reserve a slot until such time as the cab is throttled.
|
||||||
|
|
||||||
|
# COMMANDS TO AVOID
|
||||||
|
|
||||||
COMMANDS TO AVOID
|
```<f cab func1 func2>``` Instead Use ```<F cab function 1/0>```\
|
||||||
======================
|
|
||||||
|
|
||||||
```<f cab func1 func2>``` - Instead Use ```<F cab function 1/0>```\
|
|
||||||
```<t slot cab speed dir>``` Just drop the slot number\
|
```<t slot cab speed dir>``` Just drop the slot number\
|
||||||
```<T commands>``` other than ```<T id 0/1>```\
|
```<T commands>``` other than ```<T id 0/1>```\
|
||||||
```<s>```\
|
```<s>```\
|
||||||
|
|
Loading…
Reference in New Issue
Block a user