diff --git a/config/hook_implementations.py b/config/hook_implementations.py index af96d27..22d8330 100644 --- a/config/hook_implementations.py +++ b/config/hook_implementations.py @@ -330,6 +330,7 @@ def get_eive_service_op_code_dict(service_op_code_dict: ServiceOpCodeDictT): "44": ("Star Tracker: Change download FPGA image name", {OpCodeDictKeys.TIMEOUT: 2.0}), "45": ("Star Tracker: Upload FPGA image", {OpCodeDictKeys.TIMEOUT: 2.0}), "46": ("Star Tracker: FPGA action", {OpCodeDictKeys.TIMEOUT: 2.0}), + "47": ("Star Tracker: Set image processor parameters", {OpCodeDictKeys.TIMEOUT: 2.0}), } service_star_tracker_tuple = ("Star tracker", op_code_dict_srv_star_tracker) diff --git a/pus_tc/star_tracker.py b/pus_tc/star_tracker.py index 82462b0..e622a50 100644 --- a/pus_tc/star_tracker.py +++ b/pus_tc/star_tracker.py @@ -28,6 +28,7 @@ class StarTrackerActionIds: DOWNLOAD_CENTROID = 16 UPLOAD_CENTROID = 17 SUBSCRIBE_TO_TM = 18 + IMAGE_PROCESSOR = 19 REQ_SOLUTION = 24 REQ_TEMPERATURE = 25 REQ_HISTOGRAM = 28 @@ -64,7 +65,7 @@ class ImagePathDefs: uploadFile = "/mnt/sd0/startracker/gemma.bin" downloadFile = "test_image.bin" downloadPath = "/mnt/sd0/startracker" - jsonFile = "/mnt/sd0/startracker/test.json" + jsonFile = "/mnt/sd0/startracker/full.json" flashFile = "/mnt/sd0/startracker/flash.bin" flashReadPath = "/mnt/sd0/startracker" uploadCentroidJson = "/mnt/sd0/startracker/upload-centroid.json" @@ -364,6 +365,12 @@ def pack_star_tracker_commands(object_id: bytearray, tc_queue: TcQueueT, op_code command = object_id + struct.pack('!I', StarTrackerActionIds.FPGA_ACTION) + struct.pack('!B', id) command = PusTelecommand(service=8, subservice=128, ssc=69, app_data=command) tc_queue.appendleft(command.pack_command_tuple()) + if op_code == "47": + tc_queue.appendleft((QueueCommands.PRINT, "Star tracker: Set image processor parameters")) + command = object_id + struct.pack('!I', StarTrackerActionIds.IMAGE_PROCESSOR) + \ + bytearray(ImagePathDefs.jsonFile, 'utf-8') + command = PusTelecommand(service=8, subservice=128, ssc=70, app_data=command) + tc_queue.appendleft(command.pack_command_tuple()) def pack_write_command(object_id: bytearray) -> bytearray: