""" User defined code can be added here. """ from typing import Union, Tuple from tmtc_core.tc.obsw_pus_tc_base import PusTcInfo from enum import Enum # Yeah, I did not have a better idea yet.. class Developer(Enum): Robin = 0 Developer = Developer.Robin def command_preparation_hook() -> Tuple[bytearray, Union[None, PusTcInfo]]: """ Can be used to pack user-defined commands. """ if Developer == Developer.Robin: return prepare_robins_commands() def global_setup_hook(): """ Can be used to alter the global variables in a custom defined way. For example, device specific com ports or ethernet ports can be set here. The global variables in the config.obsw_config file can be edited here by using the handle. For example: config.obsw_config.G_SEND_ADDRESS = new_send_address """ if Developer == Developer.Robin: global_setup_hook_robin() def prepare_robins_commands(): from tmtc_core.tc.obsw_pus_tc_base import PusTelecommand command = PusTelecommand(service=17, subservice=1, ssc=20) return command.pack_command_tuple() def global_setup_hook_robin(): import config.obsw_config # Static IP of board. port_send = 7301 destination_address = ('', port_send) # Socket will be bound to this address. port_receive = 7302 recv_address_to_set = ('', port_receive) config.obsw_config.G_REC_ADDRESS = recv_address_to_set config.obsw_config.G_SEND_ADDRESS = destination_address