2021-01-10 11:42:06 +01:00
|
|
|
# -*- coding: utf-8 -*-
|
|
|
|
"""
|
|
|
|
@file tmtcc_tc_service200_mode.py
|
|
|
|
@brief PUS Service 200: PUS custom service 200: Mode commanding
|
|
|
|
@author R. Mueller
|
|
|
|
@date 02.05.2020
|
|
|
|
"""
|
2021-05-17 17:42:04 +02:00
|
|
|
from tmtccmd.config.definitions import QueueCommands
|
2021-10-01 10:55:56 +02:00
|
|
|
from spacepackets.ecss.tc import PusTelecommand
|
2021-07-24 14:58:47 +02:00
|
|
|
from tmtccmd.tc.packer import TcQueueT
|
2022-05-05 16:15:53 +02:00
|
|
|
from tmtccmd.tc.pus_200_fsfw_modes import pack_mode_data, Modes
|
2021-03-19 18:03:41 +01:00
|
|
|
from config.object_ids import TEST_DEVICE_ID
|
2021-01-10 11:42:06 +01:00
|
|
|
|
2021-03-19 18:03:41 +01:00
|
|
|
TEST_DEVICE_OBJ_ID = TEST_DEVICE_ID
|
2021-01-10 11:42:06 +01:00
|
|
|
|
|
|
|
|
|
|
|
def pack_service200_test_into(tc_queue: TcQueueT) -> TcQueueT:
|
2021-02-03 14:14:54 +01:00
|
|
|
tc_queue.appendleft((QueueCommands.PRINT, "Testing Service 200"))
|
2021-01-10 11:42:06 +01:00
|
|
|
# Object ID: Dummy Device
|
2021-03-19 18:01:17 +01:00
|
|
|
obj_id = TEST_DEVICE_OBJ_ID
|
2021-01-10 11:42:06 +01:00
|
|
|
# Set On Mode
|
2021-02-03 14:14:54 +01:00
|
|
|
tc_queue.appendleft((QueueCommands.PRINT, "Testing Service 200: Set Mode On"))
|
2022-05-05 16:15:53 +02:00
|
|
|
mode_data = pack_mode_data(obj_id, Modes.ON, 0)
|
2021-01-10 11:42:06 +01:00
|
|
|
command = PusTelecommand(service=200, subservice=1, ssc=2000, app_data=mode_data)
|
|
|
|
tc_queue.appendleft(command.pack_command_tuple())
|
|
|
|
# Set Normal mode
|
2021-02-03 14:14:54 +01:00
|
|
|
tc_queue.appendleft((QueueCommands.PRINT, "Testing Service 200: Set Mode Normal"))
|
2022-05-05 16:15:53 +02:00
|
|
|
mode_data = pack_mode_data(obj_id, Modes.NORMAL, 0)
|
2021-01-10 11:42:06 +01:00
|
|
|
command = PusTelecommand(service=200, subservice=1, ssc=2010, app_data=mode_data)
|
|
|
|
tc_queue.appendleft(command.pack_command_tuple())
|
|
|
|
# Set Raw Mode
|
2021-02-03 14:14:54 +01:00
|
|
|
tc_queue.appendleft((QueueCommands.PRINT, "Testing Service 200: Set Mode Raw"))
|
2022-05-05 16:15:53 +02:00
|
|
|
mode_data = pack_mode_data(obj_id, Modes.RAW, 0)
|
2021-01-10 11:42:06 +01:00
|
|
|
command = PusTelecommand(service=200, subservice=1, ssc=2020, app_data=mode_data)
|
|
|
|
tc_queue.appendleft(command.pack_command_tuple())
|
|
|
|
# Set Off Mode
|
2021-02-03 14:14:54 +01:00
|
|
|
tc_queue.appendleft((QueueCommands.PRINT, "Testing Service 200: Set Mode Off"))
|
2022-05-05 16:15:53 +02:00
|
|
|
mode_data = pack_mode_data(obj_id, Modes.OFF, 0)
|
2021-01-10 11:42:06 +01:00
|
|
|
command = PusTelecommand(service=200, subservice=1, ssc=2030, app_data=mode_data)
|
|
|
|
tc_queue.appendleft(command.pack_command_tuple())
|
|
|
|
return tc_queue
|