cosmos 4.0.1-universal-java-1.8 → 4.0.2-universal-java-1.8

Sign up to get free protection for your applications and to get access to all the features.
Files changed (51) hide show
  1. checksums.yaml +4 -4
  2. data/data/config/_id_items.yaml +1 -1
  3. data/data/config/_id_params.yaml +1 -1
  4. data/data/config/_items.yaml +1 -1
  5. data/data/config/_params.yaml +1 -1
  6. data/data/config/cmd_tlm_server.yaml +14 -0
  7. data/data/config/command.yaml +2 -0
  8. data/data/config/command_modifiers.yaml +18 -0
  9. data/data/config/item_modifiers.yaml +39 -0
  10. data/data/config/param_item_modifiers.yaml +5 -0
  11. data/data/config/parameter_modifiers.yaml +36 -0
  12. data/data/config/protocols.yaml +22 -6
  13. data/data/config/system.yaml +17 -0
  14. data/data/config/target.yaml +9 -0
  15. data/data/config/telemetry.yaml +7 -0
  16. data/data/config/telemetry_modifiers.yaml +13 -0
  17. data/data/config/tlm_viewer.yaml +5 -0
  18. data/data/crc.txt +20 -20
  19. data/demo/config/data/crc.txt +3 -3
  20. data/demo/config/targets/INST/screens/hs.txt +1 -1
  21. data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +5 -10
  22. data/demo/config/targets/SYSTEM/lib/limits_groups.rb +33 -17
  23. data/lib/cosmos/core_ext/string.rb +1 -1
  24. data/lib/cosmos/gui/utilities/script_module_gui.rb +3 -3
  25. data/lib/cosmos/interfaces/protocols/length_protocol.rb +1 -1
  26. data/lib/cosmos/interfaces/protocols/template_protocol.rb +37 -6
  27. data/lib/cosmos/interfaces/udp_interface.rb +3 -3
  28. data/lib/cosmos/packets/packet_config.rb +1 -0
  29. data/lib/cosmos/packets/parsers/format_string_parser.rb +1 -0
  30. data/lib/cosmos/packets/parsers/limits_parser.rb +1 -0
  31. data/lib/cosmos/packets/parsers/state_parser.rb +3 -0
  32. data/lib/cosmos/packets/telemetry.rb +1 -1
  33. data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +1 -1
  34. data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +4 -3
  35. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +1 -1
  36. data/lib/cosmos/tools/tlm_viewer/screen.rb +3 -3
  37. data/lib/cosmos/tools/tlm_viewer/widgets/formatfontvalue_widget.rb +5 -10
  38. data/lib/cosmos/tools/tlm_viewer/widgets/limits_widget.rb +1 -1
  39. data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +3 -1
  40. data/lib/cosmos/top_level.rb +2 -4
  41. data/lib/cosmos/utilities/csv.rb +1 -1
  42. data/lib/cosmos/version.rb +4 -4
  43. data/spec/interfaces/protocols/template_protocol_spec.rb +119 -15
  44. data/spec/interfaces/udp_interface_spec.rb +8 -2
  45. data/spec/packets/packet_config_spec.rb +11 -0
  46. data/spec/packets/parsers/format_string_parser_spec.rb +11 -0
  47. data/spec/packets/parsers/limits_parser_spec.rb +21 -10
  48. data/spec/packets/parsers/packet_item_parser_spec.rb +5 -5
  49. data/spec/packets/parsers/state_parser_spec.rb +33 -0
  50. data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +4 -4
  51. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9b9433a94613d4d9a77b6939bae05616d426ea02e101d41d36c041d547643761
4
- data.tar.gz: d9711554e0db9468556d1a3c422d544f62266211d3b541ad3b89b1ca0a14360e
3
+ metadata.gz: aa743efd88b1f40cbe8b30a4fe554250df894cd5504623922983bb022c94516a
4
+ data.tar.gz: ca495dc357053842b8d6cf0665a8583c46169b7cf8e7c9eb92b3829603e49258
5
5
  SHA512:
6
- metadata.gz: 58852d658bdfc1a1d50ffcd386b23db6371e40b17e1f8aed9e5027fc72945309f6770fa75bf9a156107feab2853cf4fd0793f8293f0d7b34acabd65a98670fb6
7
- data.tar.gz: 8c2e447d7aa25c58fc7788ebf193ca87c74574bcdbd418f6e1640b8f6b9719749bc5bc82f2e812dd72f6f93bf968e1993925979942206aadf720bda239fa91f9
6
+ metadata.gz: 91e4cd22b79229e07263e2fd63245b992897d4bd6a08a2227aafd8063b8965654aa47fe9e016735aebc64829b9d32a971710c79e5e52675a94da532d7efe2c13
7
+ data.tar.gz: 769a8c98697a2bba14dc831e1204b7b890346578f14b09eb1bdd5a8486cce945e1439dc491bf907499860790cb3cb0e1e0fc1f85b7fbea0a14fd88b41e7db6e8
@@ -9,7 +9,7 @@
9
9
  - name: Data Type
10
10
  required: true
11
11
  description: Data Type of this telemetry item
12
- values: <%= %w(INT UINT FLOAT STRING BLOCK DERVIED) %>
12
+ values: <%= %w(INT UINT FLOAT STRING BLOCK DERIVED) %>
13
13
  - name: ID Value
14
14
  required: true
15
15
  description: The value of this telemetry item that uniquely identifies this telemetry packet
@@ -37,7 +37,7 @@
37
37
  parameters: *params
38
38
  FLOAT:
39
39
  parameters: *params
40
- DERVIED:
40
+ DERIVED:
41
41
  parameters: *params
42
42
  STRING:
43
43
  parameters: &sparams
@@ -9,7 +9,7 @@
9
9
  - name: Data Type
10
10
  required: true
11
11
  description: Data Type of this telemetry item
12
- values: <%= %w(INT UINT FLOAT STRING BLOCK DERVIED) %>
12
+ values: <%= %w(INT UINT FLOAT STRING BLOCK DERIVED) %>
13
13
  - name: Description
14
14
  required: false
15
15
  description: Description for this telemetry item which must be enclosed with quotes
@@ -37,7 +37,7 @@
37
37
  parameters: *params
38
38
  FLOAT:
39
39
  parameters: *params
40
- DERVIED:
40
+ DERIVED:
41
41
  parameters: *params
42
42
  STRING:
43
43
  parameters: &sparams
@@ -17,6 +17,12 @@ PACKET_LOG_WRITER:
17
17
  to create log files.
18
18
  warning: You should NOT override the default without consulting a COSMOS expert
19
19
  as this may break the ability to successfully read and write log files.
20
+ example: |
21
+ PACKET_LOG_WRITER DEFAULT packet_log_writer.rb # Default
22
+ # The default logger filename will be <DATE>_cosmostlm.bin and will create a new log every 1MB
23
+ PACKET_LOG_WRITER DEFAULT packet_log_writer.rb cosmos true nil 1000000
24
+ # Create a logger named COSMOS_LOG which creates a new log every 5 min (600s)
25
+ PACKET_LOG_WRITER COSMOS_LOG packet_log_writer.rb cosmos true 600
20
26
  parameters:
21
27
  - name: Log Writer Name
22
28
  required: true
@@ -40,6 +46,9 @@ AUTO_INTERFACE_TARGETS:
40
46
  INTERFACE_TARGET or INTERFACE keyword.
41
47
  INTERFACE_TARGET:
42
48
  summary: Load the specified target's cmd_tlm_server.txt configuration file
49
+ example: |
50
+ INTERFACE_TARGET COSMOS # Look in the COSMOS target directory for cmd_tlm_server.txt
51
+ INTERFACE_TARGET COSMOS config.txt # Look in the COSMOS target directory for config.txt
43
52
  parameters:
44
53
  - name: Target Name
45
54
  required: true
@@ -71,6 +80,8 @@ INTERFACE:
71
80
  description: Ruby file to use when instantiating the interface.
72
81
  values:
73
82
  <%= MetaConfigParser.load('_interfaces.yaml').to_meta_config_yaml(8) %>
83
+ documentation: Additional parameters are required. Please see the [Interfaces](/docs/interfaces)
84
+ documentation for more details.
74
85
  ROUTER:
75
86
  modifiers:
76
87
  <%= MetaConfigParser.load('interface_modifiers.yaml').to_meta_config_yaml(4) %>
@@ -89,6 +100,8 @@ ROUTER:
89
100
  description: Ruby file to use when instantiating the interface.
90
101
  values:
91
102
  <%= MetaConfigParser.load('_interfaces.yaml').to_meta_config_yaml(8) %>
103
+ documentation: Additional parameters are required. Please see the [Interfaces](/docs/interfaces)
104
+ documentation for more details.
92
105
  COLLECT_METADATA:
93
106
  summary: Prompts the user for meta data when starting the Command and Telemetry Server
94
107
  BACKGROUND_TASK:
@@ -98,6 +111,7 @@ BACKGROUND_TASK:
98
111
  is only called once so if your background task is supposed to live on while the
99
112
  Server is running, you must implement your code in a loop with a sleep to not
100
113
  use all the CPU.
114
+ example: BACKGROUND_TASK example_background_task.rb
101
115
  parameters:
102
116
  - name: Filename
103
117
  required: true
@@ -3,6 +3,7 @@ COMMAND:
3
3
  modifiers:
4
4
  <%= MetaConfigParser.load('command_modifiers.yaml').to_meta_config_yaml(4) %>
5
5
  summary: Defines a new command packet
6
+ example: COMMAND SYSTEM STARTLOGGING BIG_ENDIAN "Starts logging both commands and telemetry for an interface"
6
7
  parameters:
7
8
  - name: Target
8
9
  required: true
@@ -27,6 +28,7 @@ SELECT_COMMAND:
27
28
  summary: Selects an existing command packet for editing
28
29
  description: Typically used in a separate configuration file from where the original
29
30
  command is defined to override or add to the existing command definition
31
+ example: SELECT_COMMAND SYSTEM STARTLOGGING
30
32
  parameters:
31
33
  - name: Target Name
32
34
  required: true
@@ -3,6 +3,12 @@ PARAMETER:
3
3
  modifiers:
4
4
  <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
5
5
  summary: Defines a command parameter in the current command packet
6
+ example: |
7
+ PARAMETER SYNC 0 32 UINT 0xDEADBEEF 0xDEADBEEF 0xDEADBEEF "Sync pattern"
8
+ PARAMETER DATA 32 32 INT MIN MAX 0 "Data value"
9
+ PARAMETER VALUE 64 32 FLOAT 0 10.5 2.5
10
+ PARAMETER LABEL 96 96 STRING "COSMOS" "The label to apply"
11
+ PARAMETER BLOCK 192 0 BLOCK '' "Block of binary data"
6
12
  parameters:
7
13
  - name: Name
8
14
  required: true
@@ -19,6 +25,10 @@ APPEND_PARAMETER:
19
25
  modifiers:
20
26
  <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
21
27
  summary: Defines a command parameter in the current command packet
28
+ example: |
29
+ APPEND_PARAMETER SYNC 32 UINT 0xDEADBEEF 0xDEADBEEF 0xDEADBEEF "Sync pattern"
30
+ APPEND_PARAMETER VALUE 32 FLOAT 0 10.5 2.5
31
+ APPEND_PARAMETER LABEL 0 STRING "COSMOS" "The label to apply"
22
32
  parameters:
23
33
  - name: Name
24
34
  required: true
@@ -32,6 +42,7 @@ ID_PARAMETER:
32
42
  description: ID parameters are used to identify the binary block of data as a
33
43
  particular command. A command packet may have one or more ID_PARAMETERs and all
34
44
  must match the binary data for the command to be identified.
45
+ example: ID_PARAMETER OPCODE 32 32 UINT 2 2 2 "Opcode identifier"
35
46
  parameters:
36
47
  - name: Name
37
48
  required: true
@@ -51,6 +62,7 @@ APPEND_ID_PARAMETER:
51
62
  description: ID parameters are used to identify the binary block of data as a
52
63
  particular command. A command packet may have one or more ID_PARAMETERs and all
53
64
  must match the binary data for the command to be identified.
65
+ example: APPEND_ID_PARAMETER OPCODE 32 UINT 2 2 2 "Opcode identifier"
54
66
  parameters:
55
67
  - name: Name
56
68
  required: true
@@ -61,6 +73,7 @@ ARRAY_PARAMETER:
61
73
  modifiers:
62
74
  <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
63
75
  summary: Defines a command parameter in the current command packet that is an array
76
+ example: ARRAY_PARAMETER ARRAY 64 64 FLOAT 640 "Array of 10 64bit floats"
64
77
  parameters:
65
78
  - name: Name
66
79
  required: true
@@ -77,6 +90,7 @@ APPEND_ARRAY_PARAMETER:
77
90
  modifiers:
78
91
  <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
79
92
  summary: Defines a command parameter in the current command packet that is an array
93
+ example: APPEND_ARRAY_PARAMETER ARRAY 64 FLOAT 640 "Array of 10 64bit floats"
80
94
  parameters:
81
95
  - name: Name
82
96
  required: true
@@ -87,6 +101,9 @@ SELECT_PARAMETER:
87
101
  modifiers:
88
102
  <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
89
103
  summary: Selects an existing command parameter for editing
104
+ example: |
105
+ SELECT_COMMAND SYSTEM STARTLOGGING
106
+ SELECT_PARAMETER LABEL
90
107
  parameters:
91
108
  - name: Parameter
92
109
  required: true
@@ -107,6 +124,7 @@ META:
107
124
  description: Meta data is user specific data that can be used by custom tools
108
125
  for various purposes. One example is to store additional information needed
109
126
  to generate source code header files.
127
+ example: META FSW_TYPE "struct command"
110
128
  parameters:
111
129
  - name: Meta Name
112
130
  required: true
@@ -6,6 +6,14 @@ STATE:
6
6
  you might define states for ON = 1 and OFF = 0. This allows the word ON to be
7
7
  used rather than the number 1 when sending the telemetry item and allows
8
8
  for much greater clarity and less chance for user error.
9
+ example: |
10
+ APPEND_ITEM ENABLE 32 UINT "Enable setting"
11
+ STATE FALSE 0
12
+ STATE TRUE 1
13
+ APPEND_ITEM STRING 1024 STRING "String"
14
+ STATE "NOOP" "NOOP" GREEN
15
+ STATE "ARM LASER" "ARM LASER" YELLOW
16
+ STATE "FIRE LASER" "FIRE LASER" RED
9
17
  parameters:
10
18
  - name: Key
11
19
  required: true
@@ -29,6 +37,23 @@ READ_CONVERSION:
29
37
  factor is applied to the raw value in the telemetry packet before it is displayed
30
38
  to the user. The user still has the ability to see the raw unconverted value
31
39
  in a details dialog.
40
+ example: |
41
+ READ_CONVERSION the_great_conversion.rb 1000
42
+
43
+ Defined in the_great_conversion.rb:
44
+
45
+ require 'cosmos/conversions/conversion'
46
+ module Cosmos
47
+ class TheGreatConversion < Conversion
48
+ def initialize(multiplier)
49
+ super()
50
+ @multiplier = multiplier
51
+ end
52
+ def call(value, packet, buffer)
53
+ return value * multiplier
54
+ end
55
+ end
56
+ end
32
57
  parameters:
33
58
  - name: Class File Name
34
59
  required: true
@@ -47,6 +72,7 @@ POLY_READ_CONVERSION:
47
72
  description: The conversion factor is applied to raw value in the telemetry
48
73
  packet before it is displayed to the user. The user still has the ability
49
74
  to see the raw unconverted value in a details dialog.
75
+ example: POLY_READ_CONVERSION 10 0.5 0.25
50
76
  parameters:
51
77
  - name: C0
52
78
  required: true
@@ -64,6 +90,10 @@ SEG_POLY_READ_CONVERSION:
64
90
  description: This conversion factor is applied to the raw value in the telemetry packet
65
91
  before it is displayed to the user. The user still has the ability to see the raw
66
92
  unconverted value in a details dialog.
93
+ example: |
94
+ SEG_POLY_READ_CONVERSION 0 10 0.5 0.25 # Apply the conversion to all values < 50
95
+ SEG_POLY_READ_CONVERSION 50 11 0.5 0.275 # Apply the conversion to all values >= 50 and < 100
96
+ SEG_POLY_READ_CONVERSION 100 12 0.5 0.3 # Apply the conversion to all values >= 100
67
97
  parameters:
68
98
  - name: Lower Bound
69
99
  required: true
@@ -96,6 +126,11 @@ GENERIC_READ_CONVERSION_START:
96
126
  warning: Generic conversions are not a good long term solution. Consider creating
97
127
  a conversion class and using READ_CONVERSION instead. READ_CONVERSION is easier
98
128
  to debug and higher performance.
129
+ example: |
130
+ APPEND_ITEM ITEM1 32 UINT
131
+ GENERIC_READ_CONVERSION_START
132
+ value * 1.5 # Convert the value by a scale factor
133
+ GENERIC_READ_CONVERSION_END
99
134
  GENERIC_READ_CONVERSION_END:
100
135
  summary: Complete a generic write conversion
101
136
  LIMITS:
@@ -106,6 +141,9 @@ LIMITS:
106
141
  The concept of "limits sets" is defined to allow for different limits values
107
142
  in different environments. For example, you might want tighter or looser limits
108
143
  on telemetry if your environment changes such as during thermal vacuum testing.
144
+ example: |
145
+ LIMITS DEFAULT 3 ENABLED -80.0 -70.0 60.0 80.0 -20.0 20.0
146
+ LIMITS TVAC 3 ENABLED -80.0 -30.0 30.0 80.0
109
147
  parameters:
110
148
  - name: Limits Set
111
149
  required: true
@@ -159,6 +197,7 @@ LIMITS:
159
197
  values: .+
160
198
  LIMITS_RESPONSE:
161
199
  summary: Defines a response class that is called when the limits state of the current item changes
200
+ example: LIMITS_RESPONSE example_limits_response.rb 10
162
201
  parameters:
163
202
  - name: Response Class Filename
164
203
  required: true
@@ -1,6 +1,7 @@
1
1
  ---
2
2
  FORMAT_STRING:
3
3
  summary: Adds printf style formatting
4
+ example: FORMAT_STRING "0x%0X"
4
5
  parameters:
5
6
  - name: Format
6
7
  required: true
@@ -9,6 +10,9 @@ FORMAT_STRING:
9
10
  values: .*
10
11
  UNITS:
11
12
  summary: Add displayed units
13
+ example: |
14
+ UNITS Celcius C
15
+ UNITS Kilometers KM
12
16
  parameters:
13
17
  - name: Full Name
14
18
  required: true
@@ -30,6 +34,7 @@ META:
30
34
  description: Meta data is user specific data that can be used by custom tools
31
35
  for various purposes. One example is to store additional information needed
32
36
  to generate source code header files.
37
+ example: META TEST "This parameter is for test purposes only"
33
38
  parameters:
34
39
  - name: Meta Name
35
40
  required: true
@@ -33,6 +33,14 @@ STATE:
33
33
  you might define states for ON = 1 and OFF = 0. This allows the word ON to be
34
34
  used rather than the number 1 when sending the command parameter and allows
35
35
  for much greater clarity and less chance for user error.
36
+ example: |
37
+ APPEND_PARAMETER ENABLE 32 UINT 0 1 0 "Enable setting"
38
+ STATE FALSE 0
39
+ STATE TRUE 1
40
+ APPEND_PARAMETER STRING 1024 STRING "NOOP" "String parameter"
41
+ STATE "NOOP" "NOOP"
42
+ STATE "ARM LASER" "ARM LASER" HAZARDOUS "Arming the laser is an eye safety hazard"
43
+ STATE "FIRE LASER" "FIRE LASER" HAZARDOUS "WARNING! Laser will be fired!"
36
44
  parameters:
37
45
  - name: Key
38
46
  required: true
@@ -60,6 +68,23 @@ WRITE_CONVERSION:
60
68
  takes extra parameters and must always implement the call method. The conversion
61
69
  factor is applied to the value entered by the user before it is written into
62
70
  the binary command packet and sent.
71
+ example: |
72
+ WRITE_CONVERSION the_great_conversion.rb 1000
73
+
74
+ Defined in the_great_conversion.rb:
75
+
76
+ require 'cosmos/conversions/conversion'
77
+ module Cosmos
78
+ class TheGreatConversion < Conversion
79
+ def initialize(multiplier)
80
+ super()
81
+ @multiplier = multiplier
82
+ end
83
+ def call(value, packet, buffer)
84
+ return value * multiplier
85
+ end
86
+ end
87
+ end
63
88
  parameters:
64
89
  - name: Class File Name
65
90
  required: true
@@ -77,6 +102,7 @@ POLY_WRITE_CONVERSION:
77
102
  summary: Adds a polynomial conversion factor to the current command parameter
78
103
  description: The conversion factor is applied to the value entered by the user
79
104
  before it is written into the binary command packet and sent.
105
+ example: POLY_WRITE_CONVERSION 10 0.5 0.25
80
106
  parameters:
81
107
  - name: C0
82
108
  required: true
@@ -93,6 +119,10 @@ SEG_POLY_WRITE_CONVERSION:
93
119
  summary: Adds a segmented polynomial conversion factor to the current command parameter
94
120
  description: This conversion factor is applied to the value entered by the user
95
121
  before it is written into the binary command packet and sent.
122
+ example: |
123
+ SEG_POLY_WRITE_CONVERSION 0 10 0.5 0.25 # Apply the conversion to all values < 50
124
+ SEG_POLY_WRITE_CONVERSION 50 11 0.5 0.275 # Apply the conversion to all values >= 50 and < 100
125
+ SEG_POLY_WRITE_CONVERSION 100 12 0.5 0.3 # Apply the conversion to all values >= 100
96
126
  parameters:
97
127
  - name: Lower Bound
98
128
  required: true
@@ -124,6 +154,11 @@ GENERIC_WRITE_CONVERSION_START:
124
154
  warning: Generic conversions are not a good long term solution. Consider creating
125
155
  a conversion class and using WRITE_CONVERSION instead. WRITE_CONVERSION is easier
126
156
  to debug and higher performance.
157
+ example: |
158
+ APPEND_PARAMETER ITEM1 32 UINT 0 0xFFFFFFFF 0
159
+ GENERIC_WRITE_CONVERSION_START
160
+ (value * 1.5).to_i # Convert the value by a scale factor
161
+ GENERIC_WRITE_CONVERSION_END
127
162
  GENERIC_WRITE_CONVERSION_END:
128
163
  summary: Complete a generic write conversion
129
164
  OVERFLOW:
@@ -136,6 +171,7 @@ OVERFLOW:
136
171
  for that type. Finally you can specify 'ERROR_ALLOW_HEX' which will allow for
137
172
  a maximum hex value to be writen, e.g. you can successfully write 255 to a 8
138
173
  bit signed value.
174
+ example: OVERFLOW TRUNCATE
139
175
  parameters:
140
176
  - name: Behavior
141
177
  required: true
@@ -224,8 +224,8 @@ TEMPLATE:
224
224
  required: false
225
225
  description: An initial delay after connecting after which the stream will
226
226
  be read till empty and data dropped. Useful for discarding connect headers
227
- and initial prompts. Default is nil (no initial read)
228
- values: \d+
227
+ and initial prompts. Default is nil (no initial read).
228
+ values: .+
229
229
  - name: Response Lines
230
230
  required: false
231
231
  description: The number of lines that make up expected responses.
@@ -241,17 +241,33 @@ TEMPLATE:
241
241
  description: The number of bytes to discard from the binary data after
242
242
  reading from the stream. Note that this applies to bytes including the
243
243
  sync pattern if the sync pattern is being used.
244
- Default is 0 (do not discard bytes)
244
+ Default is 0 (do not discard bytes).
245
245
  values: \d+
246
246
  - name: Sync Pattern
247
247
  required: false
248
248
  description: Hex string representing a byte pattern that will be searched
249
249
  for in the raw stream. This pattern represents a packet delimiter and all
250
250
  data found including the sync pattern will be returned.
251
- Default is nil (no sync pattern)
251
+ Default is nil (no sync pattern).
252
252
  values: .+
253
253
  - name: Fill Sync Pattern
254
254
  required: false
255
- description: Whether or not to fill in the sync pattern on outgoing packets
256
- Default is false
255
+ description: Whether or not to fill in the sync pattern on outgoing packets.
256
+ Default is false.
257
257
  values: ['false','true']
258
+ - name: Response Timeout
259
+ required: false
260
+ description: Number of seconds to wait before timing out when waiting for a response.
261
+ Default is 5 seconds.
262
+ values: .+
263
+ - name: Response Polling Period
264
+ required: false
265
+ description: Number of seconds to wait between polling for a response.
266
+ Default is 0.02 seconds.
267
+ values: .+
268
+ - name: Error Action
269
+ required: false
270
+ description: How to handle errors in the protocol like unexpected responses
271
+ or response timeouts. 'DISCONNECT' to disconnect after errors. The default
272
+ is 'LOG' to log an error and continue.
273
+ values: ['LOG','DISCONNECT']
@@ -12,6 +12,7 @@ DECLARE_TARGET:
12
12
  description: Declare target is used in place of AUTO_DECLARE_TARGETS to give more
13
13
  fine grained control over how the target folder is loaded and named within COSMOS.
14
14
  This is required if AUTO_DECLARE_TARGET is not present.
15
+ example: DECLARE_TARGET INST INST2 inst.txt
15
16
  parameters:
16
17
  - name: Target Name
17
18
  required: true
@@ -57,6 +58,10 @@ PORT:
57
58
  It is not necessary to set this option unless you wish to override the defaults
58
59
  (given in the example usage). Overriding ports is necessary if you want to run
59
60
  two Command and Telemetry Servers on the same computer simultaneously.
61
+ example: |
62
+ PORT CTS_API 7777 # Default
63
+ PORT TLMVIEWER_API 7778 # Default
64
+ PORT CTS_PREIDENTIFIED 7779 # Default
60
65
  parameters:
61
66
  - name: Port Name
62
67
  required: true
@@ -121,6 +126,13 @@ PATH:
121
126
  warning: The PROCEDURES path must be set for Script Runner and Test Runner to locate your
122
127
  procedure files. You can add multiple 'PATH PROCEDURES' lines to your configuration file
123
128
  to set multiple locations.
129
+ example: |
130
+ PATH LOGS './logs' # Default location of system and tool log files
131
+ PATH TMP './tmp' # Default location of temporary marshal files
132
+ PATH SAVED_CONFIG './saved_config' # Default location of saved configurations (see note)
133
+ PATH TABLES './tables' # Default location of table files
134
+ PATH PROCEDURES './procedures' # Default location of Script procedure files
135
+ PATH HANDBOOKS './handbooks' # Default location to place handbook files
124
136
  parameters:
125
137
  - name: Path Name
126
138
  required: true
@@ -134,6 +146,7 @@ DEFAULT_PACKET_LOG_WRITER:
134
146
  summary: Set the class used when creating binary packet log files
135
147
  warning: Overriding the default log writer can break the ability to write log
136
148
  files that COSMOS can interpret. Proceed with caution!
149
+ example: DEFAULT_PACKET_LOG_WRITER packet_log_writer.rb # Default
137
150
  parameters:
138
151
  - name: Filename
139
152
  required: true
@@ -148,6 +161,7 @@ DEFAULT_PACKET_LOG_READER:
148
161
  summary: Set the class used when reading binary packet log file
149
162
  warning: Overriding the default log read can break the ability to read log
150
163
  files. Proceed with caution!
164
+ example: DEFAULT_PACKET_LOG_READER packet_log_reader.rb # Default
151
165
  parameters:
152
166
  - name: Filename
153
167
  required: true
@@ -162,6 +176,7 @@ STALENESS_SECONDS:
162
176
  summary: Number of seconds before marking the packet stale
163
177
  description: A stale packet is identified in telemetry screens by all the telemetry
164
178
  items in the stale packet being colored purple..
179
+ example: STALENESS_SECONDS 30 # Default
165
180
  parameters:
166
181
  - name: Seconds
167
182
  required: true
@@ -186,6 +201,7 @@ ENABLE_SOUND:
186
201
  since: 3.5.0
187
202
  ALLOW_ACCESS:
188
203
  summary: White list machines that are allowed to connect to the Server
204
+ example: ALLOW_ACCESS ALL # Default
189
205
  parameters:
190
206
  - name: Name or IP Address
191
207
  required: true
@@ -223,6 +239,7 @@ ADD_MD5_FILE:
223
239
  MD5 sum calculation. This means that a change in the file will cause COSMOS to
224
240
  re-process the cmd/tlm defintions and create a new set of marshal files.
225
241
  since: 4.0.0
242
+ example: ADD_MD5_FILE lib/user_version.rb
226
243
  parameters:
227
244
  - name: Filename
228
245
  required: true