cosmos 3.9.2 → 4.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +23 -0
- data/.travis.yml +1 -0
- data/.yardopts +3 -0
- data/Gemfile +1 -1
- data/Manifest.txt +137 -52
- data/Rakefile +50 -44
- data/autohotkey/config/system/system.txt +0 -5
- data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +6 -1
- data/autohotkey/config/targets/INST/screens/extra.txt +19 -0
- data/autohotkey/config/targets/INST/sequences/run_sequence.txt +1 -0
- data/autohotkey/config/targets/META/screens/data.txt +12 -0
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/autohotkey/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +14 -0
- data/autohotkey/config/targets/SYSTEM/screens/meta.txt +14 -0
- data/autohotkey/config/targets/SYSTEM/target.txt +12 -0
- data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
- data/autohotkey/config/tools/test_runner/test_runner2.txt +1 -1
- data/autohotkey/tools/CmdSequence +14 -0
- data/autohotkey/tools/CmdSequenceAHK +23 -0
- data/autohotkey/tools/CmdSequenceAHK2 +16 -0
- data/autohotkey/tools/cmd_extractor.ahk +2 -2
- data/autohotkey/tools/cmd_sender.ahk +4 -6
- data/autohotkey/tools/cmd_sequence.ahk +215 -0
- data/autohotkey/tools/cmd_sequence2.ahk +23 -0
- data/autohotkey/tools/data_viewer.ahk +2 -3
- data/autohotkey/tools/limits_monitor.ahk +9 -11
- data/autohotkey/tools/open_gl_builder.ahk +1 -2
- data/autohotkey/tools/packet_viewer.ahk +51 -35
- data/autohotkey/tools/replay.ahk +1 -2
- data/autohotkey/tools/script_runner.ahk +1 -2
- data/autohotkey/tools/script_runner2.ahk +1 -2
- data/autohotkey/tools/test_runner2.ahk +1 -5
- data/autohotkey/tools/test_runner3.ahk +1 -3
- data/autohotkey/tools/tlm_grapher.ahk +1 -3
- data/autohotkey/tools/tlm_grapher3.ahk +1 -2
- data/autohotkey/tools/tlm_viewer.ahk +8 -3
- data/autohotkey/tools/tlm_viewer2.ahk +2 -3
- data/autohotkey/tools/tlm_viewer5.ahk +1 -2
- data/cosmos.gemspec +26 -20
- data/data/cmd_sequence.png +0 -0
- data/data/config/_array_params.yaml +23 -0
- data/data/config/_id_items.yaml +24 -0
- data/data/config/_id_params.yaml +58 -0
- data/data/config/_interfaces.yaml +206 -0
- data/data/config/_items.yaml +20 -0
- data/data/config/_params.yaml +58 -0
- data/data/config/cmd_tlm_server.yaml +110 -0
- data/data/config/command.yaml +38 -0
- data/data/config/command_modifiers.yaml +127 -0
- data/data/config/command_telemetry.yaml +3 -0
- data/data/config/data_viewer.yaml +43 -0
- data/data/config/handbook_creator.yaml +23 -0
- data/data/config/housekeeping_params.yaml +71 -0
- data/data/config/interface_modifiers.yaml +44 -0
- data/data/config/item_modifiers.yaml +172 -0
- data/data/config/launcher.yaml +117 -0
- data/data/config/limits_monitor.yaml +53 -0
- data/data/config/linegraph_params.yaml +30 -0
- data/data/config/linegraph_plot.yaml +106 -0
- data/data/config/page_modifiers.yaml +128 -0
- data/data/config/param_item_modifiers.yaml +41 -0
- data/data/config/parameter_modifiers.yaml +144 -0
- data/data/config/protocols.yaml +257 -0
- data/data/config/screen.yaml +151 -0
- data/data/config/script_runner.yaml +15 -0
- data/data/config/system.yaml +153 -0
- data/data/config/table_manager.yaml +76 -0
- data/data/config/table_parameter_modifiers.yaml +9 -0
- data/data/config/target.yaml +71 -0
- data/data/config/telemetry.yaml +73 -0
- data/data/config/telemetry_modifiers.yaml +129 -0
- data/data/config/test_runner.yaml +118 -0
- data/data/config/tlm_extractor.yaml +109 -0
- data/data/config/tlm_grapher.yaml +78 -0
- data/data/config/tlm_viewer.yaml +107 -0
- data/data/config/unknown.yaml +3 -0
- data/data/config/widgets.yaml +1339 -0
- data/data/config/xy_params.yaml +50 -0
- data/data/config/xy_plot.yaml +12 -0
- data/data/config_editor.png +0 -0
- data/data/crc.txt +172 -161
- data/data/delete.png +0 -0
- data/demo/config/data/crc.txt +56 -36
- data/demo/config/data/meta_init.txt +1 -4
- data/demo/config/system/system.txt +15 -3
- data/demo/config/system/system2.txt +13 -3
- data/demo/config/targets/EXAMPLE/lib/example_interface.rb +2 -6
- data/demo/config/targets/EXAMPLE/target.txt +3 -1
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +1 -0
- data/demo/config/targets/INST/lib/inst_dump_component.rb +34 -0
- data/demo/config/targets/INST/screens/adcs.txt +39 -15
- data/demo/config/targets/INST/screens/commanding.txt +26 -19
- data/demo/config/targets/INST/screens/spacing_box.txt +44 -0
- data/demo/config/targets/INST/screens/spacing_grid.txt +78 -0
- data/demo/config/targets/INST/screens/tabs.txt +0 -2
- data/demo/config/targets/INST/sequences/sequence.tsv +3 -0
- data/demo/config/targets/INST/tables/EventAction.csv +9 -0
- data/demo/config/targets/INST/tables/EventAction.dat +0 -0
- data/demo/config/targets/INST/tables/McConfigTable.csv +20 -0
- data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
- data/demo/config/targets/INST/target.txt +4 -0
- data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +2 -0
- data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +2 -0
- data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +6 -0
- data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +38 -0
- data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -3
- data/demo/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/demo/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/demo/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
- data/demo/config/targets/SYSTEM/lib/limits_groups.rb +39 -0
- data/demo/config/targets/SYSTEM/screens/status.txt +1 -1
- data/demo/config/targets/SYSTEM/target.txt +12 -0
- data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +1 -1
- data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +8 -5
- data/demo/config/targets/TEMPLATED/target.txt +2 -0
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +15 -6
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +13 -5
- data/demo/config/tools/data_viewer/data_viewer.txt +9 -0
- data/demo/config/tools/launcher/launcher.txt +9 -6
- data/demo/config/tools/launcher/launcher2.txt +16 -13
- data/demo/config/tools/launcher/launcher_mini.txt +45 -0
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +12 -11
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +12 -11
- data/demo/config/tools/test_runner/test_runner.txt +1 -1
- data/demo/config/tools/tlm_viewer/tlm_viewer.txt +5 -5
- data/demo/lib/example_background_task.rb +9 -5
- data/demo/lib/example_target.rb +5 -15
- data/demo/lib/scpi_target.rb +4 -10
- data/demo/procedures/cosmos_api_test.rb +17 -0
- data/demo/tools/CmdSequence +16 -0
- data/demo/tools/CmdSequence.bat +9 -0
- data/demo/tools/ConfigEditor +16 -0
- data/demo/tools/ConfigEditor.bat +9 -0
- data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
- data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/ext/cosmos/ext/packet/packet.c +5 -5
- data/install/config/data/crc.txt +12 -8
- data/install/config/system/system.txt +13 -3
- data/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +14 -0
- data/install/config/targets/SYSTEM/target.txt +12 -0
- data/install/tools/CmdSequence +16 -0
- data/install/tools/CmdSequence.bat +9 -0
- data/install/tools/ConfigEditor +16 -0
- data/install/tools/ConfigEditor.bat +9 -0
- data/install/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
- data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/lib/cosmos.rb +1 -1
- data/lib/cosmos/config/config_parser.rb +147 -59
- data/lib/cosmos/config/meta_config_parser.rb +57 -0
- data/lib/cosmos/conversions/polynomial_conversion.rb +20 -4
- data/lib/cosmos/conversions/unix_time_conversion.rb +4 -4
- data/lib/cosmos/core_ext/array.rb +45 -5
- data/lib/cosmos/core_ext/cosmos_io.rb +31 -15
- data/lib/cosmos/core_ext/file.rb +2 -2
- data/lib/cosmos/core_ext/kernel.rb +1 -6
- data/lib/cosmos/core_ext/objectspace.rb +0 -2
- data/lib/cosmos/core_ext/string.rb +27 -4
- data/lib/cosmos/core_ext/time.rb +39 -10
- data/lib/cosmos/gui/choosers/combobox_chooser.rb +37 -26
- data/lib/cosmos/gui/choosers/file_chooser.rb +23 -6
- data/lib/cosmos/gui/choosers/float_chooser.rb +13 -11
- data/lib/cosmos/gui/choosers/integer_chooser.rb +13 -11
- data/lib/cosmos/gui/choosers/string_chooser.rb +18 -36
- data/lib/cosmos/gui/choosers/telemetry_chooser.rb +64 -64
- data/lib/cosmos/gui/choosers/value_chooser.rb +15 -15
- data/lib/cosmos/gui/dialogs/about_dialog.rb +18 -13
- data/lib/cosmos/gui/dialogs/calendar_dialog.rb +11 -3
- data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/details_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/exception_dialog.rb +7 -7
- data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +20 -15
- data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +143 -0
- data/lib/cosmos/gui/dialogs/legal_dialog.rb +6 -5
- data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +5 -2
- data/lib/cosmos/gui/dialogs/progress_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/pry_dialog.rb +4 -4
- data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +3 -0
- data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +7 -6
- data/lib/cosmos/gui/dialogs/splash.rb +1 -1
- data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +114 -0
- data/lib/cosmos/gui/line_graph/line_graph.rb +9 -10
- data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +7 -5
- data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +3 -7
- data/lib/cosmos/gui/line_graph/line_graph_popups.rb +3 -8
- data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +2 -7
- data/lib/cosmos/gui/line_graph/overview_graph.rb +6 -1
- data/lib/cosmos/gui/opengl/earth_model.rb +6 -3
- data/lib/cosmos/gui/opengl/gl_bounds.rb +11 -23
- data/lib/cosmos/gui/opengl/gl_light.rb +3 -4
- data/lib/cosmos/gui/opengl/gl_material.rb +3 -4
- data/lib/cosmos/gui/opengl/gl_scene.rb +10 -4
- data/lib/cosmos/gui/opengl/gl_shape.rb +6 -2
- data/lib/cosmos/gui/opengl/gl_viewer.rb +5 -5
- data/lib/cosmos/gui/opengl/gl_viewport.rb +11 -12
- data/lib/cosmos/gui/opengl/moon_model.rb +6 -3
- data/lib/cosmos/gui/opengl/stl_reader.rb +8 -9
- data/lib/cosmos/gui/opengl/stl_shape.rb +4 -5
- data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +7 -7
- data/lib/cosmos/gui/qt.rb +1 -1
- data/lib/cosmos/gui/qt_tool.rb +21 -10
- data/lib/cosmos/gui/text/completion.rb +23 -2
- data/lib/cosmos/gui/text/completion_text_edit.rb +38 -23
- data/lib/cosmos/gui/utilities/analyze_log.rb +1 -1
- data/lib/cosmos/gui/utilities/screenshot.rb +2 -2
- data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +11 -1
- data/lib/cosmos/gui/widgets/packet_log_frame.rb +19 -6
- data/lib/cosmos/interfaces.rb +10 -0
- data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +28 -47
- data/lib/cosmos/interfaces/interface.rb +240 -22
- data/lib/cosmos/interfaces/linc_interface.rb +3 -5
- data/lib/cosmos/interfaces/protocols/burst_protocol.rb +173 -0
- data/lib/cosmos/interfaces/protocols/crc_protocol.rb +141 -0
- data/lib/cosmos/{streams/fixed_stream_protocol.rb → interfaces/protocols/fixed_protocol.rb} +40 -37
- data/lib/cosmos/{streams/length_stream_protocol.rb → interfaces/protocols/length_protocol.rb} +55 -48
- data/lib/cosmos/interfaces/protocols/override_protocol.rb +52 -0
- data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +141 -0
- data/lib/cosmos/interfaces/protocols/protocol.rb +60 -0
- data/lib/cosmos/interfaces/protocols/template_protocol.rb +209 -0
- data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +81 -0
- data/lib/cosmos/interfaces/serial_interface.rb +28 -23
- data/lib/cosmos/interfaces/simulated_target_interface.rb +27 -16
- data/lib/cosmos/interfaces/stream_interface.rb +36 -108
- data/lib/cosmos/interfaces/tcpip_client_interface.rb +21 -21
- data/lib/cosmos/interfaces/tcpip_server_interface.rb +555 -94
- data/lib/cosmos/interfaces/udp_interface.rb +51 -83
- data/lib/cosmos/io/buffered_file.rb +92 -2
- data/lib/cosmos/io/json_drb.rb +2 -2
- data/lib/cosmos/io/posix_serial_driver.rb +3 -1
- data/lib/cosmos/io/raw_logger.rb +3 -3
- data/lib/cosmos/io/serial_driver.rb +14 -5
- data/lib/cosmos/io/win32_serial_driver.rb +16 -4
- data/lib/cosmos/packet_logs.rb +0 -1
- data/lib/cosmos/packet_logs/packet_log_reader.rb +11 -1
- data/lib/cosmos/packet_logs/packet_log_writer.rb +31 -13
- data/lib/cosmos/packets/binary_accessor.rb +599 -32
- data/lib/cosmos/packets/commands.rb +48 -24
- data/lib/cosmos/packets/packet.rb +140 -54
- data/lib/cosmos/packets/packet_config.rb +0 -2
- data/lib/cosmos/packets/parsers/packet_item_parser.rb +10 -2
- data/lib/cosmos/packets/structure.rb +81 -33
- data/lib/cosmos/packets/structure_item.rb +45 -5
- data/lib/cosmos/packets/telemetry.rb +149 -55
- data/lib/cosmos/script/api_shared.rb +1000 -0
- data/lib/cosmos/script/commands.rb +2 -2
- data/lib/cosmos/script/extract.rb +19 -4
- data/lib/cosmos/script/limits.rb +2 -0
- data/lib/cosmos/script/script.rb +1 -1
- data/lib/cosmos/script/scripting.rb +4 -784
- data/lib/cosmos/script/telemetry.rb +44 -23
- data/lib/cosmos/script/tools.rb +15 -69
- data/lib/cosmos/streams/serial_stream.rb +12 -19
- data/lib/cosmos/streams/stream.rb +2 -11
- data/lib/cosmos/streams/tcpip_socket_stream.rb +3 -13
- data/lib/cosmos/system/system.rb +187 -31
- data/lib/cosmos/system/target.rb +11 -2
- data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +12 -11
- data/lib/cosmos/tools/cmd_sender/{cmd_sender_item_delegate.rb → cmd_param_table_item_delegate.rb} +11 -10
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +209 -164
- data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +652 -0
- data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +510 -0
- data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +194 -0
- data/lib/cosmos/tools/cmd_tlm_server/api.rb +179 -5
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +31 -14
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +23 -16
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +92 -20
- data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +1 -1
- data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +17 -4
- data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +0 -5
- data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +1 -2
- data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +4 -4
- data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +121 -0
- data/lib/cosmos/tools/cmd_tlm_server/routers.rb +8 -4
- data/lib/cosmos/tools/config_editor/config_editor.rb +720 -0
- data/lib/cosmos/tools/config_editor/config_editor_frame.rb +675 -0
- data/lib/cosmos/tools/data_viewer/data_viewer.rb +44 -27
- data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +8 -22
- data/lib/cosmos/tools/launcher/launcher.rb +29 -12
- data/lib/cosmos/tools/launcher/launcher_config.rb +1 -1
- data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +153 -42
- data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +44 -6
- data/lib/cosmos/tools/replay/replay.rb +36 -20
- data/lib/cosmos/tools/replay/replay_server.rb +1 -1
- data/lib/cosmos/tools/script_runner/script_runner_config.rb +1 -1
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +31 -21
- data/lib/cosmos/tools/table_manager/table_config.rb +9 -3
- data/lib/cosmos/tools/table_manager/table_manager.rb +27 -7
- data/lib/cosmos/tools/test_runner/results_writer.rb +6 -6
- data/lib/cosmos/tools/test_runner/test_runner.rb +4 -6
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +4 -5
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +1 -1
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +23 -6
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +44 -3
- data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +20 -7
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +11 -4
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +2 -2
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +16 -0
- data/lib/cosmos/tools/tlm_viewer/screen.rb +36 -32
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +59 -50
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +2 -2
- data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +1 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +22 -4
- data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +9 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +55 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +3 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +3 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +12 -12
- data/lib/cosmos/top_level.rb +34 -24
- data/lib/cosmos/utilities/crc.rb +108 -6
- data/lib/cosmos/utilities/csv.rb +68 -14
- data/lib/cosmos/utilities/logger.rb +2 -2
- data/lib/cosmos/utilities/low_fragmentation_array.rb +9 -1
- data/lib/cosmos/version.rb +6 -6
- data/lib/cosmos/win32/win32_main.rb +50 -46
- data/run_gui_tests.bat +3 -1
- data/spec/conversions/unix_time_formatted_conversion_spec.rb +2 -2
- data/spec/conversions/unix_time_seconds_conversion_spec.rb +2 -2
- data/spec/core_ext/file_spec.rb +1 -1
- data/spec/core_ext/objectspace_spec.rb +12 -9
- data/spec/core_ext/string_spec.rb +6 -0
- data/spec/core_ext/time_spec.rb +10 -0
- data/spec/gui/line_graph/line_clip_spec.rb +226 -224
- data/spec/gui/qt_spec.rb +81 -79
- data/spec/install/config/system/system.txt +0 -6
- data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +5 -5
- data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +8 -8
- data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/{install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt → spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/spec/install/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
- data/spec/install/config/targets/SYSTEM/screens/status.txt +12 -0
- data/spec/install/config/targets/SYSTEM/target.txt +12 -0
- data/spec/interfaces/cmd_tlm_server_interface_spec.rb +9 -13
- data/spec/interfaces/interface_spec.rb +402 -18
- data/spec/interfaces/linc_interface_spec.rb +37 -39
- data/spec/interfaces/protocols/burst_protocol_spec.rb +300 -0
- data/spec/interfaces/protocols/crc_protocol_spec.rb +709 -0
- data/spec/interfaces/protocols/fixed_protocol_spec.rb +119 -0
- data/spec/interfaces/protocols/length_protocol_spec.rb +499 -0
- data/spec/interfaces/protocols/override_protocol_spec.rb +158 -0
- data/spec/interfaces/protocols/preidentified_protocol_spec.rb +149 -0
- data/spec/interfaces/protocols/template_protocol_spec.rb +218 -0
- data/spec/interfaces/protocols/terminated_protocol_spec.rb +174 -0
- data/spec/interfaces/serial_interface_spec.rb +35 -34
- data/spec/interfaces/simulated_target_interface_spec.rb +13 -13
- data/spec/interfaces/tcpip_client_interface_spec.rb +21 -16
- data/spec/interfaces/tcpip_server_interface_spec.rb +66 -69
- data/spec/interfaces/udp_interface_spec.rb +120 -55
- data/spec/io/serial_driver_spec.rb +41 -39
- data/spec/io/udp_sockets_spec.rb +13 -8
- data/spec/io/win32_serial_driver_spec.rb +62 -59
- data/spec/packet_logs/packet_log_reader_spec.rb +68 -47
- data/spec/packet_logs/packet_log_writer_spec.rb +7 -5
- data/spec/packets/commands_spec.rb +5 -5
- data/spec/packets/packet_spec.rb +2 -14
- data/spec/script/extract_spec.rb +21 -7
- data/spec/script/scripting_spec.rb +261 -6
- data/spec/script/telemetry_spec.rb +17 -9
- data/spec/spec_helper.rb +26 -10
- data/spec/streams/serial_stream_spec.rb +87 -82
- data/spec/streams/tcpip_client_stream_spec.rb +12 -4
- data/spec/streams/tcpip_socket_stream_spec.rb +5 -0
- data/spec/system/system_spec.rb +66 -50
- data/spec/system/target_spec.rb +33 -11
- data/spec/tools/cmd_tlm_server/api_spec.rb +5 -5
- data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +75 -15
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +125 -5
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +244 -232
- data/spec/tools/cmd_tlm_server/commanding_spec.rb +18 -18
- data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +124 -29
- data/spec/tools/cmd_tlm_server/interfaces_spec.rb +2 -2
- data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +145 -0
- data/spec/tools/cmd_tlm_server/router_thread_spec.rb +50 -10
- data/spec/tools/table_manager/tablemanager_core_spec.rb +0 -1
- data/spec/top_level/top_level_spec.rb +39 -11
- data/spec/utilities/csv_spec.rb +62 -20
- data/tasks/gemfile_stats.rake +6 -3
- data/test/performance/config/system/system_packets.txt +0 -1
- data/test/performance/config/system/system_threads.txt +0 -1
- metadata +177 -92
- data/autohotkey/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/autohotkey/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
- data/autohotkey/config/targets/COSMOS/target.txt +0 -5
- data/autohotkey/userpath.txt +0 -1
- data/demo/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/demo/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/demo/config/targets/COSMOS/screens/version.txt +0 -19
- data/demo/config/targets/COSMOS/target.txt +0 -11
- data/demo/config/targets/META/cmd_tlm/meta_cmd.txt +0 -10
- data/demo/config/targets/META/cmd_tlm/meta_tlm.txt +0 -13
- data/demo/userpath.txt +0 -1
- data/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/install/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
- data/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/install/config/targets/COSMOS/screens/version.txt +0 -19
- data/install/config/targets/COSMOS/target.txt +0 -9
- data/install/config/targets/SYSTEM/README.txt +0 -1
- data/install/userpath.txt +0 -1
- data/lib/cosmos/io/tcpip_server.rb +0 -571
- data/lib/cosmos/packet_logs/meta_packet_log_writer.rb +0 -107
- data/lib/cosmos/streams/burst_stream_protocol.rb +0 -25
- data/lib/cosmos/streams/preidentified_stream_protocol.rb +0 -118
- data/lib/cosmos/streams/stream_protocol.rb +0 -373
- data/lib/cosmos/streams/template_stream_protocol.rb +0 -140
- data/lib/cosmos/streams/terminated_stream_protocol.rb +0 -85
- data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +0 -41
- data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/spec/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/spec/install/config/targets/COSMOS/screens/version.txt +0 -19
- data/spec/install/config/targets/COSMOS/target.txt +0 -5
- data/spec/install/config/targets/META/cmd_tlm/meta_cmd.txt +0 -4
- data/spec/install/config/targets/META/cmd_tlm/meta_tlm.txt +0 -4
- data/spec/install/userpath.txt +0 -1
- data/spec/interfaces/stream_interface_spec.rb +0 -157
- data/spec/io/tcpip_server_spec.rb +0 -338
- data/spec/packet_logs/meta_packet_log_writer_spec.rb +0 -170
- data/spec/streams/burst_stream_protocol_spec.rb +0 -32
- data/spec/streams/fixed_stream_protocol_spec.rb +0 -113
- data/spec/streams/length_stream_protocol_spec.rb +0 -300
- data/spec/streams/preidentified_stream_protocol_spec.rb +0 -121
- data/spec/streams/stream_protocol_spec.rb +0 -346
- data/spec/streams/template_stream_protocol_spec.rb +0 -156
- data/spec/streams/terminated_stream_protocol_spec.rb +0 -127
- data/test/performance/userpath.txt +0 -1
data/Rakefile
CHANGED
@@ -70,7 +70,7 @@ class RakeCrc32
|
|
70
70
|
|
71
71
|
end
|
72
72
|
|
73
|
-
require 'yard'
|
73
|
+
require 'yard' if RUBY_ENGINE == 'ruby'
|
74
74
|
|
75
75
|
# Import the rake tasks
|
76
76
|
import 'tasks/manifest.rake'
|
@@ -88,52 +88,56 @@ task :require_version do
|
|
88
88
|
end
|
89
89
|
|
90
90
|
task :devkit do
|
91
|
-
if
|
92
|
-
if
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
91
|
+
if RUBY_ENGINE == 'ruby'
|
92
|
+
if RUBY_PLATFORM[0..2] == 'x64'
|
93
|
+
if File.exist?("C:/Devkit64/bin")
|
94
|
+
ENV['PATH'] = 'C:\\Devkit64\\bin;C:\\Devkit64\\mingw\\bin;' + ENV['PATH']
|
95
|
+
end
|
96
|
+
else
|
97
|
+
if File.exist?("C:/Devkit/bin")
|
98
|
+
ENV['PATH'] = 'C:\\Devkit\\bin;C:\\Devkit\\mingw\\bin;' + ENV['PATH']
|
99
|
+
end
|
98
100
|
end
|
99
101
|
end
|
100
102
|
end
|
101
103
|
|
102
104
|
task :build => [:devkit] do
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
|
128
|
-
|
129
|
-
|
130
|
-
|
131
|
-
|
132
|
-
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
105
|
+
if RUBY_ENGINE == 'ruby'
|
106
|
+
_, platform, *_ = RUBY_PLATFORM.split("-")
|
107
|
+
saved = Dir.pwd
|
108
|
+
shared_extension = 'so'
|
109
|
+
shared_extension = 'bundle' if platform =~ /darwin/
|
110
|
+
|
111
|
+
extensions = [
|
112
|
+
'crc',
|
113
|
+
'low_fragmentation_array',
|
114
|
+
'polynomial_conversion',
|
115
|
+
'config_parser',
|
116
|
+
'string',
|
117
|
+
'array',
|
118
|
+
'cosmos_io',
|
119
|
+
'tabbed_plots_config',
|
120
|
+
'telemetry',
|
121
|
+
'line_graph',
|
122
|
+
'packet',
|
123
|
+
'platform',
|
124
|
+
'buffered_file']
|
125
|
+
|
126
|
+
extensions.each do |extension_name|
|
127
|
+
Dir.chdir "ext/cosmos/ext/#{extension_name}"
|
128
|
+
FileUtils.rm_f Dir.glob('*.o')
|
129
|
+
FileUtils.rm_f Dir.glob("*.#{shared_extension}")
|
130
|
+
FileUtils.rm_f Dir.glob('*.def')
|
131
|
+
FileUtils.rm_f 'Makefile'
|
132
|
+
system('ruby extconf.rb')
|
133
|
+
system('make')
|
134
|
+
FileUtils.copy("#{extension_name}.#{shared_extension}", '../../../../lib/cosmos/ext/.')
|
135
|
+
FileUtils.rm_f Dir.glob('*.o')
|
136
|
+
FileUtils.rm_f Dir.glob("*.#{shared_extension}")
|
137
|
+
FileUtils.rm_f Dir.glob('*.def')
|
138
|
+
FileUtils.rm_f 'Makefile'
|
139
|
+
Dir.chdir saved
|
140
|
+
end
|
137
141
|
end
|
138
142
|
end
|
139
143
|
|
@@ -250,8 +254,10 @@ task :stress do
|
|
250
254
|
end
|
251
255
|
end
|
252
256
|
|
253
|
-
|
254
|
-
|
257
|
+
if RUBY_ENGINE == 'ruby'
|
258
|
+
YARD::Rake::YardocTask.new do |t|
|
259
|
+
t.options = ['--protected'] # See all options by typing 'yardoc --help'
|
260
|
+
end
|
255
261
|
end
|
256
262
|
|
257
263
|
task :release => [:require_version, :git_checkout_master, :build, :spec, :manifest, :version, :install_crc, :gem]
|
@@ -4,7 +4,6 @@
|
|
4
4
|
# AUTO_DECLARE_TARGETS
|
5
5
|
DECLARE_TARGET INST
|
6
6
|
DECLARE_TARGET INST INST2
|
7
|
-
DECLARE_TARGET COSMOS
|
8
7
|
DECLARE_TARGET META
|
9
8
|
DECLARE_TARGET SYSTEM
|
10
9
|
|
@@ -25,10 +24,6 @@ PATH TABLES ./outputs/tables
|
|
25
24
|
PATH HANDBOOKS ./outputs/handbooks
|
26
25
|
PATH PROCEDURES ./procedures
|
27
26
|
|
28
|
-
# Command and Telemetry Database Version (Optional)
|
29
|
-
# CMD_TLM_VERSION version
|
30
|
-
CMD_TLM_VERSION "Demo Version"
|
31
|
-
|
32
27
|
# DISABLE_DNS
|
33
28
|
|
34
29
|
ALLOW_ACCESS ALL
|
@@ -23,7 +23,11 @@ COMMAND INST ABORT BIG_ENDIAN "Aborts a collect on the instrument"
|
|
23
23
|
PARAMETER CCSDSTYPE 3 1 UINT 1 1 1 "CCSDS primary header packet type"
|
24
24
|
PARAMETER CCSDSSHF 4 1 UINT 0 0 0 "CCSDS primary header secondary header flag"
|
25
25
|
ID_PARAMETER CCSDSAPID 5 11 UINT 0 2047 999 "CCSDS primary header application id"
|
26
|
-
PARAMETER CCSDSSEQFLAGS 16 2 UINT
|
26
|
+
PARAMETER CCSDSSEQFLAGS 16 2 UINT 0 3 3 "CCSDS primary header sequence flags"
|
27
|
+
STATE FIRST 1
|
28
|
+
STATE CONT 0
|
29
|
+
STATE LAST 2
|
30
|
+
STATE NOGROUP 3
|
27
31
|
PARAMETER CCSDSSEQCNT 18 14 UINT 0 16383 0 "CCSDS primary header sequence count"
|
28
32
|
OVERFLOW TRUNCATE
|
29
33
|
PARAMETER CCSDSLENGTH 32 16 UINT 0 65535 1 "CCSDS primary header packet length"
|
@@ -71,6 +75,7 @@ COMMAND INST ASCIICMD BIG_ENDIAN "Enumerated ASCII command"
|
|
71
75
|
STATE "NOOP" "NOOP"
|
72
76
|
STATE "ARM LASER" "ARM LASER" HAZARDOUS "Arming the laser poses an eye safety hazard."
|
73
77
|
STATE "FIRE LASER" "FIRE LASER" HAZARDOUS "WARNING Laser will be fired!"
|
78
|
+
APPEND_PARAMETER BINARY 32 STRING 0xDEADBEEF "Binary string"
|
74
79
|
|
75
80
|
COMMAND INST FLTCMD BIG_ENDIAN "Command with float parameters"
|
76
81
|
PARAMETER CCSDSVER 0 3 UINT 0 0 0 "CCSDS primary header version number"
|
@@ -0,0 +1,19 @@
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
2
|
+
|
3
|
+
VERTICALBOX
|
4
|
+
LABELVALUE INST EXTRA RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
5
|
+
LABELVALUE INST EXTRA RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
6
|
+
LABELVALUE INST EXTRA RECEIVED_COUNT # COSMOS packet received count
|
7
|
+
LABELVALUE INST EXTRA CCSDSVER # CCSDS packet version number (See CCSDS 133.0-B-1)
|
8
|
+
LABELVALUE INST EXTRA CCSDSTYPE # CCSDS packet type (command or telemetry)
|
9
|
+
LABELVALUE INST EXTRA CCSDSSHF # CCSDS secondary header flag
|
10
|
+
LABELVALUE INST EXTRA CCSDSAPID # CCSDS application process id
|
11
|
+
LABELVALUE INST EXTRA CCSDSSEQFLAGS # CCSDS sequence flags
|
12
|
+
LABELVALUE INST EXTRA CCSDSSEQCNT # CCSDS packet sequence count
|
13
|
+
LABELVALUE INST EXTRA CCSDSLENGTH # CCSDS packet data length
|
14
|
+
LABELVALUE INST EXTRA TIMESEC # Seconds since epoch (January 1st, 1970, midnight)
|
15
|
+
LABELVALUE INST EXTRA TIMEUS # Microseconds of second
|
16
|
+
LABELVALUE INST EXTRA PKTID # Packet id (The combination of CCSDS_APID and PACKET_ID identify the packet)
|
17
|
+
LABELVALUE INST EXTRA VALUE # Value
|
18
|
+
END
|
19
|
+
|
@@ -0,0 +1 @@
|
|
1
|
+
COMMAND "60" "INST ABORT"
|
@@ -0,0 +1,12 @@
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
2
|
+
|
3
|
+
VERTICALBOX
|
4
|
+
LABELVALUE META DATA RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
5
|
+
LABELVALUE META DATA RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
6
|
+
LABELVALUE META DATA RECEIVED_COUNT # COSMOS packet received count
|
7
|
+
LABELVALUE META DATA TEST_COUNT # Test Count
|
8
|
+
LABELVALUE META DATA TEST_ANGLE # Test Angle
|
9
|
+
LABELVALUE META DATA TEST_TYPE # Test Type
|
10
|
+
LABELVALUE META DATA VERSION # Version Metadata
|
11
|
+
END
|
12
|
+
|
@@ -0,0 +1,16 @@
|
|
1
|
+
TELEMETRY SYSTEM META BIG_ENDIAN "System Meta Data Telemetry Packet"
|
2
|
+
APPEND_ID_ITEM PKTID 8 UINT 1 "Packet Id"
|
3
|
+
APPEND_ITEM CONFIG 256 STRING "Configuration Name"
|
4
|
+
APPEND_ITEM COSMOS_VERSION 240 STRING "COSMOS Version"
|
5
|
+
APPEND_ITEM USER_VERSION 240 STRING "User Project Version"
|
6
|
+
APPEND_ITEM RUBY_VERSION 240 STRING "Ruby Version"
|
7
|
+
APPEND_ITEM OPERATOR_NAME 512 STRING "Operator Name"
|
8
|
+
|
9
|
+
COMMAND SYSTEM META BIG_ENDIAN "System Meta Data Command Packet"
|
10
|
+
DISABLED
|
11
|
+
APPEND_ID_PARAMETER PKTID 8 UINT 1 1 1 "Packet Id"
|
12
|
+
APPEND_PARAMETER CONFIG 256 STRING "" "Configuration Name"
|
13
|
+
APPEND_PARAMETER COSMOS_VERSION 240 STRING "" "COSMOS Version"
|
14
|
+
APPEND_PARAMETER USER_VERSION 240 STRING "" "User Project Version"
|
15
|
+
APPEND_PARAMETER RUBY_VERSION 240 STRING "" "Ruby Version"
|
16
|
+
APPEND_PARAMETER OPERATOR_NAME 512 STRING "" "Operator Name"
|
@@ -1,39 +1,39 @@
|
|
1
|
-
COMMAND
|
1
|
+
COMMAND SYSTEM STARTLOGGING BIG_ENDIAN "Starts logging both commands and telemetry for an interface"
|
2
2
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
3
3
|
APPEND_ID_PARAMETER OPCODE 32 UINT 2 2 2 "COSMOS Command Opcode"
|
4
4
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
5
5
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
6
6
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
7
|
-
|
8
|
-
COMMAND
|
7
|
+
|
8
|
+
COMMAND SYSTEM STARTCMDLOG BIG_ENDIAN "Starts logging commands for an interface"
|
9
9
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
10
10
|
APPEND_ID_PARAMETER OPCODE 32 UINT 3 3 3 "COSMOS Command Opcode"
|
11
11
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
12
12
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
13
13
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
14
14
|
|
15
|
-
COMMAND
|
15
|
+
COMMAND SYSTEM STARTTLMLOG BIG_ENDIAN "Starts logging telemetry for an interface"
|
16
16
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
17
17
|
APPEND_ID_PARAMETER OPCODE 32 UINT 4 4 4 "COSMOS Command Opcode"
|
18
18
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
19
19
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
20
20
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
21
|
-
|
22
|
-
COMMAND
|
21
|
+
|
22
|
+
COMMAND SYSTEM STOPLOGGING BIG_ENDIAN "Stops logging both commands and telemetry for an interface"
|
23
23
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
24
24
|
APPEND_ID_PARAMETER OPCODE 32 UINT 5 5 5 "COSMOS Command Opcode"
|
25
25
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
26
26
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
|
27
27
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
28
28
|
|
29
|
-
COMMAND
|
29
|
+
COMMAND SYSTEM STOPCMDLOG BIG_ENDIAN "Stops logging commands for an interface"
|
30
30
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
31
31
|
APPEND_ID_PARAMETER OPCODE 32 UINT 6 6 6 "COSMOS Command Opcode"
|
32
32
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
33
33
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
|
34
34
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
35
35
|
|
36
|
-
COMMAND
|
36
|
+
COMMAND SYSTEM STOPTLMLOG BIG_ENDIAN "Stops logging telemetry for an interface"
|
37
37
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
38
38
|
APPEND_ID_PARAMETER OPCODE 32 UINT 7 7 7 "COSMOS Command Opcode"
|
39
39
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
@@ -0,0 +1,7 @@
|
|
1
|
+
TELEMETRY SYSTEM LIMITS_CHANGE BIG_ENDIAN "COSMOS limits change"
|
2
|
+
APPEND_ID_ITEM PKT_ID 8 UINT 2 "Packet Id"
|
3
|
+
APPEND_ITEM TARGET 240 STRING "Target name"
|
4
|
+
APPEND_ITEM PACKET 240 STRING "Packet name"
|
5
|
+
APPEND_ITEM ITEM 240 STRING "Item that changed limits state"
|
6
|
+
APPEND_ITEM OLD_STATE 240 STRING "The old limit state"
|
7
|
+
APPEND_ITEM NEW_STATE 240 STRING "The new limit state"
|
@@ -0,0 +1,14 @@
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
2
|
+
|
3
|
+
VERTICALBOX
|
4
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
5
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
6
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_COUNT # COSMOS packet received count
|
7
|
+
LABELVALUE SYSTEM LIMITS_CHANGE PKT_ID # Packet Id
|
8
|
+
LABELVALUE SYSTEM LIMITS_CHANGE TARGET # Target name
|
9
|
+
LABELVALUE SYSTEM LIMITS_CHANGE PACKET # Packet name
|
10
|
+
LABELVALUE SYSTEM LIMITS_CHANGE ITEM # Item that changed limits state
|
11
|
+
LABELVALUE SYSTEM LIMITS_CHANGE OLD_STATE # The old limit state
|
12
|
+
LABELVALUE SYSTEM LIMITS_CHANGE NEW_STATE # The new limit state
|
13
|
+
END
|
14
|
+
|
@@ -0,0 +1,14 @@
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
2
|
+
|
3
|
+
VERTICALBOX
|
4
|
+
LABELVALUE SYSTEM META RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
5
|
+
LABELVALUE SYSTEM META RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
6
|
+
LABELVALUE SYSTEM META RECEIVED_COUNT # COSMOS packet received count
|
7
|
+
LABELVALUE SYSTEM META PKTID # Packet Id
|
8
|
+
LABELVALUE SYSTEM META CONFIG # Configuration Name
|
9
|
+
LABELVALUE SYSTEM META COSMOS_VERSION # COSMOS Version
|
10
|
+
LABELVALUE SYSTEM META USER_VERSION # User Project Version
|
11
|
+
LABELVALUE SYSTEM META RUBY_VERSION # Ruby Version
|
12
|
+
LABELVALUE SYSTEM META OPERATOR_NAME # Operator Name
|
13
|
+
END
|
14
|
+
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# Ignored Parameters
|
2
|
+
IGNORE_PARAMETER PKTID
|
3
|
+
IGNORE_PARAMETER CONFIG
|
4
|
+
IGNORE_PARAMETER COSMOS_VERSION
|
5
|
+
IGNORE_PARAMETER USER_VERSION
|
6
|
+
IGNORE_PARAMETER RUBY_VERSION
|
7
|
+
|
8
|
+
# Ignored Items
|
9
|
+
IGNORE_ITEM PKTID
|
10
|
+
IGNORE_ITEM RECEIVED_COUNT
|
11
|
+
IGNORE_ITEM RECEIVED_TIMESECONDS
|
12
|
+
IGNORE_ITEM RECEIVED_TIMEFORMATTED
|
@@ -11,8 +11,8 @@ INTERFACE INST2_INT simulated_target_interface.rb sim_inst.rb
|
|
11
11
|
TARGET INST2
|
12
12
|
DONT_LOG
|
13
13
|
|
14
|
-
INTERFACE
|
15
|
-
TARGET
|
14
|
+
INTERFACE SYSTM_INT cmd_tlm_server_interface.rb
|
15
|
+
TARGET SYSTEM
|
16
16
|
DISABLE_DISCONNECT
|
17
17
|
LOG COSMOSLOG
|
18
18
|
|
@@ -0,0 +1,14 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: ascii-8bit
|
3
|
+
|
4
|
+
# Copyright 2015 Ball Aerospace & Technologies Corp.
|
5
|
+
# All Rights Reserved.
|
6
|
+
#
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
8
|
+
# under the terms of the GNU General Public License
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
11
|
+
|
12
|
+
require 'cosmos'
|
13
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
14
|
+
Cosmos::CmdSequence.run
|
@@ -0,0 +1,23 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: ascii-8bit
|
3
|
+
|
4
|
+
# Copyright 2014 Ball Aerospace & Technologies Corp.
|
5
|
+
# All Rights Reserved.
|
6
|
+
#
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
8
|
+
# under the terms of the GNU General Public License
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
11
|
+
|
12
|
+
require_relative 'autohotkey.rb'
|
13
|
+
autohotkey('CmdSequence', 'cmd_sequence.ahk') do
|
14
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
15
|
+
require 'cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui'
|
16
|
+
Cosmos::CmdSequence.run
|
17
|
+
end
|
18
|
+
|
19
|
+
# Remove generated sequences
|
20
|
+
%w(sequence.txt test_sequence.txt).each do |filename|
|
21
|
+
path = File.join("autohotkey", "outputs", "sequences", filename)
|
22
|
+
File.delete path if File.exist? path
|
23
|
+
end
|
@@ -0,0 +1,16 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
# encoding: ascii-8bit
|
3
|
+
|
4
|
+
# Copyright 2014 Ball Aerospace & Technologies Corp.
|
5
|
+
# All Rights Reserved.
|
6
|
+
#
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
8
|
+
# under the terms of the GNU General Public License
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
11
|
+
|
12
|
+
require_relative 'autohotkey.rb'
|
13
|
+
autohotkey('CmdSequence2', 'cmd_sequence2.ahk') do
|
14
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
15
|
+
Cosmos::CmdSequence.run
|
16
|
+
end
|
@@ -1,15 +1,15 @@
|
|
1
1
|
SetWinDelay 1000
|
2
2
|
WinWaitActive Command Sender
|
3
|
-
Sleep
|
3
|
+
Sleep 500
|
4
4
|
Run ruby.exe %A_ScriptDir%/CmdTlmServer
|
5
|
-
Sleep
|
5
|
+
Sleep 4000
|
6
6
|
WinActivate Command Sender
|
7
7
|
Sleep 500
|
8
8
|
Click 60 600 ; Click in the Command History
|
9
9
|
Sleep 500
|
10
10
|
Send cmd( ; Cause a popup completion
|
11
11
|
Sleep 500
|
12
|
-
Send {Down
|
12
|
+
Send {Down 1}{Enter} ; INST
|
13
13
|
Sleep 500
|
14
14
|
Send {Enter} ; ABORT
|
15
15
|
Sleep 500
|
@@ -34,8 +34,6 @@ WinWaitActive Command Sender
|
|
34
34
|
Sleep 500
|
35
35
|
Click 85 75 ; Target dropdown CMD-1
|
36
36
|
Sleep 500
|
37
|
-
Click 75 103 ; INST
|
38
|
-
Sleep 500
|
39
37
|
Click 610 75 ; Send CMD-2
|
40
38
|
Sleep 500
|
41
39
|
Click 365 75 ; Command dropdown CMD-1
|
@@ -141,7 +139,7 @@ WinWaitActive Command Sender
|
|
141
139
|
Sleep 500
|
142
140
|
Click 85 75 ; Target dropdown
|
143
141
|
Sleep 500
|
144
|
-
Click 75
|
142
|
+
Click 75 103 ; INST2
|
145
143
|
Sleep 500
|
146
144
|
Click 365 75 ; Command dropdown
|
147
145
|
Sleep 500
|
@@ -0,0 +1,215 @@
|
|
1
|
+
SetWinDelay 1000
|
2
|
+
WinWaitActive Command Sequence
|
3
|
+
Run ruby.exe %A_ScriptDir%/CmdTlmServer
|
4
|
+
Sleep 4000
|
5
|
+
WinActivate Command Sequence
|
6
|
+
|
7
|
+
Send ^o ; Open
|
8
|
+
WinWaitActive Select
|
9
|
+
Send bad_sequence.txt{Enter}
|
10
|
+
WinWaitActive Error
|
11
|
+
Send {Enter}
|
12
|
+
WinWaitActive Command Sequence
|
13
|
+
|
14
|
+
Send ^o ; Open
|
15
|
+
WinWaitActive Select
|
16
|
+
Send bad_sequence2.txt{Enter}
|
17
|
+
WinWaitActive Error
|
18
|
+
Send {Enter}
|
19
|
+
WinWaitActive Command Sequence
|
20
|
+
|
21
|
+
Send ^o ; Open
|
22
|
+
WinWaitActive Select
|
23
|
+
Send saved_sequence.txt{Enter}
|
24
|
+
WinWaitActive Command Sequence
|
25
|
+
|
26
|
+
Send !f ; File menu
|
27
|
+
Sleep 500
|
28
|
+
Send a ; Save As
|
29
|
+
WinWaitActive Save
|
30
|
+
Send test_sequence.txt{Enter}
|
31
|
+
WinWaitActive Command Sequence
|
32
|
+
|
33
|
+
Send !a ; Actions menu
|
34
|
+
Sleep 500
|
35
|
+
Send e ; Expand All
|
36
|
+
Sleep 1000
|
37
|
+
Send !a ; Actions menu
|
38
|
+
Sleep 500
|
39
|
+
Send d ; Display state values in hex
|
40
|
+
Sleep 1000
|
41
|
+
Send !a ; Actions menu
|
42
|
+
Sleep 500
|
43
|
+
Send s ; Show ignored items
|
44
|
+
Sleep 1000
|
45
|
+
Send !a ; Actions menu
|
46
|
+
Sleep 500
|
47
|
+
Send c ; Collapse all
|
48
|
+
Sleep 1000
|
49
|
+
Click 300 210 ; Click on sequence item to display it
|
50
|
+
Sleep 1000
|
51
|
+
Send !a ; Actions menu
|
52
|
+
Sleep 500
|
53
|
+
Send d ; Display state values in hex
|
54
|
+
Sleep 500
|
55
|
+
Send !a ; Actions menu
|
56
|
+
Sleep 500
|
57
|
+
Send s ; Show ignored items
|
58
|
+
Sleep 500
|
59
|
+
|
60
|
+
Click right 170 309 ; Right click collect type
|
61
|
+
Sleep 500
|
62
|
+
Send {Tab}{Enter}
|
63
|
+
WinWaitActive INST
|
64
|
+
Sleep 500
|
65
|
+
Send {Enter}
|
66
|
+
WinWaitActive Command Sequence
|
67
|
+
|
68
|
+
Click right 170 309 ; Right click collect type
|
69
|
+
Sleep 500
|
70
|
+
Send {Tab 2}{Enter} ; Insert filename
|
71
|
+
WinWaitActive Insert
|
72
|
+
Sleep 500
|
73
|
+
Send {Esc}
|
74
|
+
WinWaitActive Command Sequence
|
75
|
+
|
76
|
+
Click 260 311 2 ; Double click the collect type manual entry
|
77
|
+
Sleep 500
|
78
|
+
Send 9{Enter}
|
79
|
+
Sleep 500
|
80
|
+
|
81
|
+
Click 170 309 2 ; Double click the collect Type
|
82
|
+
Sleep 500
|
83
|
+
Click ; Click again to activate the drop down
|
84
|
+
Sleep 500
|
85
|
+
Send {Up}{Enter} ; Choose SPECIAL collect
|
86
|
+
Sleep 1000
|
87
|
+
|
88
|
+
Send ^t ; Disconnect mode
|
89
|
+
WinWaitActive Server
|
90
|
+
Send +{Tab}{Enter} ; Cancel
|
91
|
+
WinWaitActive Command Sequence
|
92
|
+
|
93
|
+
Send ^t ; Disconnect mode
|
94
|
+
WinWaitActive Server
|
95
|
+
Send {Tab}{Enter} ; Select
|
96
|
+
WinWaitActive Select
|
97
|
+
Send cmd_tlm_server.txt{Enter}
|
98
|
+
WinWaitActive Server
|
99
|
+
Send {Tab}{Enter} ; Confirm dialog
|
100
|
+
WinWaitActive Command Sequence
|
101
|
+
|
102
|
+
Click 450 70 ; Start
|
103
|
+
WinWaitActive Save
|
104
|
+
Send {Tab 2}{Enter} ; No
|
105
|
+
; Script should execute and complete
|
106
|
+
WinWaitActive Command Sequence
|
107
|
+
|
108
|
+
Send ^t ; Toggle off disconnect mode
|
109
|
+
Sleep 500
|
110
|
+
Send ^n ; New sequence
|
111
|
+
WinWaitActive Save
|
112
|
+
Send {Tab}{Enter} ; Yes
|
113
|
+
WinWaitActive Command Sequence
|
114
|
+
|
115
|
+
Click 100 100 ; Click the Target dropdown
|
116
|
+
Sleep 500
|
117
|
+
Send {Down}{Enter} ; Change the target
|
118
|
+
Sleep 500
|
119
|
+
Click 610 100 ; Add Abort command
|
120
|
+
Sleep 500
|
121
|
+
Click 633 155 ; Delete the command
|
122
|
+
Sleep 500
|
123
|
+
Click 610 100 ; Add Abort command
|
124
|
+
Sleep 500
|
125
|
+
Click 610 100 ; Add Abort command
|
126
|
+
Sleep 500
|
127
|
+
Click 450 100 ; Click the command dropdown
|
128
|
+
Sleep 500
|
129
|
+
Send {Down 2}{Enter} ; ASCIICMD
|
130
|
+
Sleep 500
|
131
|
+
Click 610 100 ; Add ASCIICMD
|
132
|
+
Sleep 500
|
133
|
+
Click 300 210 ; Click on the ASCIICMD to expand it
|
134
|
+
Sleep 500
|
135
|
+
|
136
|
+
Click 170 330 2 ; Click in the BINARY field
|
137
|
+
Send testtest{Enter}
|
138
|
+
WinWaitActive Error
|
139
|
+
Send {Enter}
|
140
|
+
WinWaitActive Command Sequence
|
141
|
+
|
142
|
+
Click 170 330 2 ; Double click in the BINARY field
|
143
|
+
Sleep 500
|
144
|
+
Send test{Enter}
|
145
|
+
Sleep 500
|
146
|
+
|
147
|
+
Click 170 330 2 ; Double click in the BINARY field
|
148
|
+
Sleep 500
|
149
|
+
Send 0xDEADBEEF{Enter}
|
150
|
+
Sleep 500
|
151
|
+
|
152
|
+
Click 450 70 ; Click Start
|
153
|
+
WinWaitActive Save
|
154
|
+
Send {Enter} ; Cancel
|
155
|
+
WinWaitActive Command Sequence
|
156
|
+
|
157
|
+
Click 450 70 ; Click Start
|
158
|
+
WinWaitActive Save
|
159
|
+
Send {Tab 2}{Enter} ; No
|
160
|
+
; Script should execute and complete
|
161
|
+
|
162
|
+
Click 80 155 ; First command Time field
|
163
|
+
Sleep 500
|
164
|
+
Send {Backspace 5}2.5{Enter} ; 2.5s delay
|
165
|
+
Click right 85 180
|
166
|
+
WinWaitActive Select
|
167
|
+
Send {Esc} ; Cancel absolute time select
|
168
|
+
WinWaitActive Command Sequence
|
169
|
+
Click right 80 180
|
170
|
+
WinWaitActive Select
|
171
|
+
Min := 1 + A_Min ; One minute in the future
|
172
|
+
Send {Tab 2}%Min%{Enter} ; Set the future time
|
173
|
+
WinWaitActive Command Sequence
|
174
|
+
Click right 80 210
|
175
|
+
WinWaitActive Select
|
176
|
+
Send {Tab 5}{Enter} ; Select time now
|
177
|
+
WinWaitActive Command Sequence
|
178
|
+
|
179
|
+
Send ^s ; Save
|
180
|
+
WinWaitActive Save
|
181
|
+
Send {Enter}
|
182
|
+
Sleep 500
|
183
|
+
; If the file already exists a dialog comes up
|
184
|
+
; so we tab enter to switch from default No to Yes
|
185
|
+
Send {Tab}{Enter}
|
186
|
+
WinWaitActive Command Sequence
|
187
|
+
|
188
|
+
Click 450 70 ; Click Start
|
189
|
+
Sleep 65000 ; Allow the minute to go by and the sequence to complete
|
190
|
+
|
191
|
+
Click 450 70 ; Click Start
|
192
|
+
Sleep 1000
|
193
|
+
Click 530 70 ; Click Pause
|
194
|
+
Sleep 2000
|
195
|
+
Click 450 70 ; Click Start
|
196
|
+
Sleep 2000
|
197
|
+
Click 450 70 ; Click Go and the sequence should complete
|
198
|
+
Sleep 1000
|
199
|
+
|
200
|
+
Click 450 70 ; Click Start
|
201
|
+
Sleep 1000
|
202
|
+
Click 610 70 ; Click Stop
|
203
|
+
Sleep 2000
|
204
|
+
|
205
|
+
; Shut down the CTS
|
206
|
+
WinActivate Command and Telemetry Server
|
207
|
+
WinWaitActive Command and Telemetry Server
|
208
|
+
Sleep 500
|
209
|
+
Send ^q
|
210
|
+
WinWaitActive Confirm Close
|
211
|
+
Sleep 500
|
212
|
+
Send {Enter}
|
213
|
+
|
214
|
+
WinActivate Command Sequence
|
215
|
+
Send ^q
|